]> git.pld-linux.org Git - SPECS.git/blob - clion.spec
SPECS updated Sat 31 Jul 21:27:02 CEST 2021
[SPECS.git] / clion.spec
1 %define         product clion
2 Summary:        C/C++ IDE
3 Name:           clion
4 Version:        2016.2
5 Release:        1
6 # TODO: figure out what's the licensing and redistribution
7 License:        ?
8 Group:          Development/Tools
9 Source0:        https://download.jetbrains.com/cpp/CLion-%{version}.tar.gz
10 # NoSource0-md5:        3188ed0cde65018b95d3257081bad000
11 NoSource:       0
12 Source1:        %{product}.desktop
13 Patch0:         pld.patch
14 URL:            http://www.jetbrains.com/clion/
15 BuildRequires:  jpackage-utils
16 BuildRequires:  rpm-javaprov
17 BuildRequires:  rpmbuild(macros) >= 1.734
18 BuildRequires:  unzip
19 Requires:       jre >= 1.6
20 Suggests:       %{name}-cmake
21 Suggests:       %{name}-gdb
22 Suggests:       cmake >= 2.8
23 Suggests:       gdb >= 7.8
24 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25
26 # don't strip fsnotifier, it's size is checked for "outdated binary"
27 # https://bugs.archlinux.org/task/34703
28 # http://git.jetbrains.org/?p=idea/community.git;a=blob;f=platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/FileWatcher.java;h=004311b96a35df1ffc2c87baba78a8b2a8809f7d;hb=376b939fd6d6ec4c12191a5f90503d9d62c501da#l173
29 %define         _noautostrip    .*/fsnotifier.*
30
31 # use /usr/lib, 64bit files do not conflict with 32bit files (64 suffix)
32 # this allows to install both arch files and to use 32bit jdk on 64bit os
33 %define         _appdir         %{_prefix}/lib/%{product}
34
35 %description
36 Smart Editor. Code better, refactor easily
37
38 Knowing your code through and through, CLion can take care of the
39 routine while you focus on the important things. Boost your
40 productivity with the keyboard-centric approach (Vim-emulation plugin
41 is also available in plugin repository), full coding assistance, smart
42 and relevant code completion, fast project navigation, intelligent
43 intention actions, and reliable refactorings.
44
45 %package cmake
46 Summary:        Cross-platform, open-source make system
47 Summary(pl.UTF-8):      Wieloplatformowy system make o otwartych źródłach
48 Group:          Development/Building
49 Requires:       %{name} = %{version}-%{release}
50
51 %description cmake
52 This package contains bundled CMake 3.5.1.
53
54 %package gdb
55 Summary:        A GNU source-level debugger for C, C++ and Fortran
56 Summary(pl.UTF-8):      Symboliczny odpluskwiacz dla C i innych języków
57 Group:          Development/Building
58 Requires:       %{name} = %{version}-%{release}
59
60 %description gdb
61 This package contains bundled GDB 7.8
62
63 %package lldb
64 Summary:        Next generation high-performance debugger
65 Summary(pl.UTF-8):      Wydajny debugger nowej generacji
66 Group:          Development/Debuggers
67 URL:            http://lldb.llvm.org/
68 Requires:       %{name} = %{version}-%{release}
69
70 %description lldb
71 LLDB is a next generation, high-performance debugger. It is built as a
72 set of reusable components which highly leverage existing libraries in
73 the larger LLVM Project, such as the Clang expression parser and LLVM
74 disassembler.
75
76 %description lldb -l pl.UTF-8
77 LLDB to wydajny debugger nowej generacji. Jest zbudowany w oparciu o
78 komponenty wielokrotnego użytku, wykorzystujące istniejące biblioteki
79 w projekcie LLVM, takie jak analizator wyrażeń kompilatora Clang oraz
80 disasembler LLVM.
81
82 %prep
83 %setup -qn %{product}-%{version}
84
85 # keep only single arch files (don't want to pull 32bit deps by default),
86 # if you want to mix, install rpm from both arch
87 %ifnarch %{x8664}
88 rm bin/fsnotifier64
89 rm bin/libyjpagent-linux64.so
90 rm bin/libbreakgen64.so
91 rm bin/%{product}64.vmoptions
92 rm -r lib/libpty/linux/x86_64
93 rm -r plugins/tfsIntegration/lib/native/linux/x86_64
94 %endif
95 %ifnarch %{ix86}
96 rm bin/fsnotifier
97 rm bin/libyjpagent-linux.so
98 rm bin/libbreakgen.so
99 #rm bin/%{product}.vmoptions
100 rm -r lib/libpty/linux/x86
101 rm -r plugins/tfsIntegration/lib/native/linux/x86
102 %endif
103 %ifnarch arm
104 rm bin/fsnotifier-arm
105 rm -r plugins/tfsIntegration/lib/native/linux/arm
106 %endif
107 %ifnarch ppc
108 rm -r plugins/tfsIntegration/lib/native/linux/ppc
109 %endif
110 %ifos Linux
111 rm -r lib/libpty/{macosx,win}
112 rm -r plugins/tfsIntegration/lib/native/{aix,freebsd,hpux,macosx,solaris,win32}
113 chmod a+rx plugins/tfsIntegration/lib/native/linux/*/*.so
114 %endif
115 chmod a+rx bin/*.so bin/fsnotifier* lib/libpty/linux/*/*.so
116
117 mv bin/%{product}.svg .
118
119 %patch0 -p1
120
121 # cleanup backups after patching
122 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
123
124 %install
125 rm -rf $RPM_BUILD_ROOT
126 install -d $RPM_BUILD_ROOT{%{_appdir},%{_bindir},%{_pixmapsdir},%{_desktopdir}}
127 cp -l build.txt $RPM_BUILD_ROOT/cp-test && l=l && rm -f $RPM_BUILD_ROOT/cp-test
128 cp -a$l bin help lib license plugins $RPM_BUILD_ROOT%{_appdir}
129 ln -s %{_pixmapsdir}/%{product}.svg $RPM_BUILD_ROOT%{_appdir}/bin
130 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
131 cp -p %{product}.svg $RPM_BUILD_ROOT%{_pixmapsdir}
132 ln -s %{_appdir}/bin/%{product}.sh $RPM_BUILD_ROOT%{_bindir}/%{product}
133
134 %clean
135 rm -rf $RPM_BUILD_ROOT
136
137 %files
138 %defattr(644,root,root,755)
139 %attr(755,root,root) %{_bindir}/%{product}
140 %dir %{_appdir}
141 %{_appdir}/help
142 %{_appdir}/license
143 %{_appdir}/plugins
144 %dir %{_appdir}/bin
145 %ifnarch %{ix86}
146 %{_appdir}/bin/%{product}*.vmoptions
147 %endif
148 %{_appdir}/bin/%{product}.svg
149 %{_appdir}/bin/idea.properties
150 %{_appdir}/bin/log.xml
151 %attr(755,root,root) %{_appdir}/bin/%{product}.sh
152 %attr(755,root,root) %{_appdir}/bin/inspect.sh
153 %attr(755,root,root) %{_appdir}/bin/fsnotifier*
154 %attr(755,root,root) %{_appdir}/bin/libbreakgen*.so
155 %attr(755,root,root) %{_appdir}/bin/libyjpagent-linux*.so
156 %dir %{_appdir}/lib
157 %{_appdir}/lib/*.jar
158 %dir %{_appdir}/lib/libpty
159 %dir %{_appdir}/lib/libpty/linux
160 %dir %{_appdir}/lib/libpty/linux/x86*
161 %attr(755,root,root) %{_appdir}/lib/libpty/linux/x86*/libpty.so
162 %{_desktopdir}/%{product}.desktop
163 %{_pixmapsdir}/%{product}.svg
164
165 %files cmake
166 %defattr(644,root,root,755)
167 %defattr(-,root,root,-)
168 %{_appdir}/bin/cmake
169
170 %files gdb
171 %defattr(644,root,root,755)
172 %defattr(-,root,root,-)
173 %{_appdir}/bin/gdb
174
175 %files lldb
176 %defattr(644,root,root,755)
177 %dir %{_appdir}/bin/lldb
178 %dir %{_appdir}/bin/lldb/bin
179 %dir %{_appdir}/bin/lldb/lib
180 %attr(755,root,root) %{_appdir}/bin/lldb/LLDBFrontend
181 %attr(755,root,root) %{_appdir}/bin/lldb/bin/lldb-server
182 %attr(755,root,root) %{_appdir}/bin/lldb/lib/liblldb.so.3
183
184 %dir %{_appdir}/bin/lldb/lib/python2.7
185 %dir %{_appdir}/bin/lldb/lib/python2.7/site-packages
186 %dir %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb
187 %dir %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/formatters
188 %dir %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/formatters/cpp
189 %dir %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/runtime
190 %dir %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/utils
191 %{_appdir}/bin/lldb/lib/python2.7/site-packages/*.py
192 %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/*.py
193 %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/formatters/*.py
194 %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/formatters/cpp/*.py
195 %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/lldb-argdumper
196 %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/runtime/*.py
197 %{_appdir}/bin/lldb/lib/python2.7/site-packages/lldb/utils/*.py
198
199 %dir %{_appdir}/bin/lldb/renderers
200 %dir %{_appdir}/bin/lldb/renderers/lldb_formatters
201 %{_appdir}/bin/lldb/renderers/lldb_formatters/*.py
This page took 0.568556 seconds and 3 git commands to generate.