]>
Commit | Line | Data |
---|---|---|
cf6bfaea | 1 | %define product clion |
cf6bfaea ER |
2 | Summary: C/C++ IDE |
3 | Name: clion | |
fbaad988 | 4 | Version: 2016.2 |
88718275 | 5 | Release: 1 |
cf6bfaea ER |
6 | # TODO: figure out what's the licensing and redistribution |
7 | License: ? | |
8 | Group: Development/Tools | |
fbaad988 ER |
9 | Source0: https://download.jetbrains.com/cpp/CLion-%{version}.tar.gz |
10 | # NoSource0-md5: 3188ed0cde65018b95d3257081bad000 | |
cf6bfaea | 11 | NoSource: 0 |
109e0602 | 12 | Source1: %{product}.desktop |
597c60d9 | 13 | Patch0: pld.patch |
cf6bfaea ER |
14 | URL: http://www.jetbrains.com/clion/ |
15 | BuildRequires: jpackage-utils | |
16 | BuildRequires: rpm-javaprov | |
5336ca4e | 17 | BuildRequires: rpmbuild(macros) >= 1.734 |
cf6bfaea ER |
18 | BuildRequires: unzip |
19 | Requires: jre >= 1.6 | |
ffad0d3f ER |
20 | Suggests: %{name}-cmake |
21 | Suggests: %{name}-gdb | |
90f69c4e ER |
22 | Suggests: cmake >= 2.8 |
23 | Suggests: gdb >= 7.8 | |
cf6bfaea ER |
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 | ||
ffad0d3f ER |
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 | |
4d0f39f5 | 52 | This package contains bundled CMake 3.5.1. |
ffad0d3f ER |
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 | ||
fbaad988 ER |
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 | ||
cf6bfaea | 82 | %prep |
88718275 | 83 | %setup -qn %{product}-%{version} |
cf6bfaea ER |
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 | |
88718275 | 87 | %ifnarch %{x8664} |
cf6bfaea ER |
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 | |
88718275 | 93 | rm -r plugins/tfsIntegration/lib/native/linux/x86_64 |
cf6bfaea | 94 | %endif |
88718275 | 95 | %ifnarch %{ix86} |
cf6bfaea ER |
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 | |
88718275 ER |
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 | |
cf6bfaea | 109 | %endif |
88718275 | 110 | %ifos Linux |
cf6bfaea | 111 | rm -r lib/libpty/{macosx,win} |
88718275 ER |
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 | ||
cf6bfaea ER |
117 | mv bin/%{product}.svg . |
118 | ||
597c60d9 ER |
119 | %patch0 -p1 |
120 | ||
cf6bfaea ER |
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 | |
109e0602 | 130 | cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} |
cf6bfaea | 131 | cp -p %{product}.svg $RPM_BUILD_ROOT%{_pixmapsdir} |
b4f57b33 | 132 | ln -s %{_appdir}/bin/%{product}.sh $RPM_BUILD_ROOT%{_bindir}/%{product} |
cf6bfaea ER |
133 | |
134 | %clean | |
135 | rm -rf $RPM_BUILD_ROOT | |
136 | ||
137 | %files | |
138 | %defattr(644,root,root,755) | |
b4f57b33 | 139 | %attr(755,root,root) %{_bindir}/%{product} |
cf6bfaea ER |
140 | %dir %{_appdir} |
141 | %{_appdir}/help | |
142 | %{_appdir}/license | |
143 | %{_appdir}/plugins | |
144 | %dir %{_appdir}/bin | |
d113ef60 | 145 | %ifnarch %{ix86} |
cf6bfaea | 146 | %{_appdir}/bin/%{product}*.vmoptions |
d113ef60 | 147 | %endif |
cf6bfaea ER |
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 | |
109e0602 | 162 | %{_desktopdir}/%{product}.desktop |
cf6bfaea ER |
163 | %{_pixmapsdir}/%{product}.svg |
164 | ||
ffad0d3f ER |
165 | %files cmake |
166 | %defattr(644,root,root,755) | |
cf6bfaea ER |
167 | %defattr(-,root,root,-) |
168 | %{_appdir}/bin/cmake | |
ffad0d3f ER |
169 | |
170 | %files gdb | |
171 | %defattr(644,root,root,755) | |
172 | %defattr(-,root,root,-) | |
cf6bfaea | 173 | %{_appdir}/bin/gdb |
fbaad988 ER |
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 |