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