]> git.pld-linux.org Git - packages/clion.git/blame - clion.spec
up to 2016.2; add -lldb subpackage
[packages/clion.git] / clion.spec
CommitLineData
cf6bfaea
ER
1%define product clion
2%include /usr/lib/rpm/macros.java
3Summary: C/C++ IDE
4Name: clion
fbaad988 5Version: 2016.2
88718275 6Release: 1
cf6bfaea
ER
7# TODO: figure out what's the licensing and redistribution
8License: ?
9Group: Development/Tools
fbaad988
ER
10Source0: https://download.jetbrains.com/cpp/CLion-%{version}.tar.gz
11# NoSource0-md5: 3188ed0cde65018b95d3257081bad000
cf6bfaea 12NoSource: 0
109e0602 13Source1: %{product}.desktop
597c60d9 14Patch0: pld.patch
cf6bfaea
ER
15URL: http://www.jetbrains.com/clion/
16BuildRequires: jpackage-utils
17BuildRequires: rpm-javaprov
fbaad988 18BuildRequires: rpmbuild(macros) >= 1.583
cf6bfaea
ER
19BuildRequires: unzip
20Requires: jre >= 1.6
ffad0d3f
ER
21Suggests: %{name}-cmake
22Suggests: %{name}-gdb
90f69c4e
ER
23Suggests: cmake >= 2.8
24Suggests: gdb >= 7.8
cf6bfaea
ER
25BuildRoot: %{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
40Smart Editor. Code better, refactor easily
41
42Knowing your code through and through, CLion can take care of the
43routine while you focus on the important things. Boost your
44productivity with the keyboard-centric approach (Vim-emulation plugin
45is also available in plugin repository), full coding assistance, smart
46and relevant code completion, fast project navigation, intelligent
47intention actions, and reliable refactorings.
48
ffad0d3f
ER
49%package cmake
50Summary: Cross-platform, open-source make system
51Summary(pl.UTF-8): Wieloplatformowy system make o otwartych źródłach
52Group: Development/Building
53Requires: %{name} = %{version}-%{release}
54
55%description cmake
4d0f39f5 56This package contains bundled CMake 3.5.1.
ffad0d3f
ER
57
58%package gdb
59Summary: A GNU source-level debugger for C, C++ and Fortran
60Summary(pl.UTF-8): Symboliczny odpluskwiacz dla C i innych języków
61Group: Development/Building
62Requires: %{name} = %{version}-%{release}
63
64%description gdb
65This package contains bundled GDB 7.8
66
fbaad988
ER
67%package lldb
68Summary: Next generation high-performance debugger
69Summary(pl.UTF-8): Wydajny debugger nowej generacji
70Group: Development/Debuggers
71URL: http://lldb.llvm.org/
72Requires: %{name} = %{version}-%{release}
73
74%description lldb
75LLDB is a next generation, high-performance debugger. It is built as a
76set of reusable components which highly leverage existing libraries in
77the larger LLVM Project, such as the Clang expression parser and LLVM
78disassembler.
79
80%description lldb -l pl.UTF-8
81LLDB to wydajny debugger nowej generacji. Jest zbudowany w oparciu o
82komponenty wielokrotnego użytku, wykorzystujące istniejące biblioteki
83w projekcie LLVM, takie jak analizator wyrażeń kompilatora Clang oraz
84disasembler 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
92rm bin/fsnotifier64
93rm bin/libyjpagent-linux64.so
94rm bin/libbreakgen64.so
95rm bin/%{product}64.vmoptions
96rm -r lib/libpty/linux/x86_64
88718275 97rm -r plugins/tfsIntegration/lib/native/linux/x86_64
cf6bfaea 98%endif
88718275 99%ifnarch %{ix86}
cf6bfaea
ER
100rm bin/fsnotifier
101rm bin/libyjpagent-linux.so
102rm bin/libbreakgen.so
103#rm bin/%{product}.vmoptions
104rm -r lib/libpty/linux/x86
88718275
ER
105rm -r plugins/tfsIntegration/lib/native/linux/x86
106%endif
107%ifnarch arm
108rm bin/fsnotifier-arm
109rm -r plugins/tfsIntegration/lib/native/linux/arm
110%endif
111%ifnarch ppc
112rm -r plugins/tfsIntegration/lib/native/linux/ppc
cf6bfaea 113%endif
88718275 114%ifos Linux
cf6bfaea 115rm -r lib/libpty/{macosx,win}
88718275
ER
116rm -r plugins/tfsIntegration/lib/native/{aix,freebsd,hpux,macosx,solaris,win32}
117chmod a+rx plugins/tfsIntegration/lib/native/linux/*/*.so
118%endif
119chmod a+rx bin/*.so bin/fsnotifier* lib/libpty/linux/*/*.so
120
cf6bfaea
ER
121mv bin/%{product}.svg .
122
597c60d9
ER
123%patch0 -p1
124
cf6bfaea
ER
125# cleanup backups after patching
126find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
127
128%install
129rm -rf $RPM_BUILD_ROOT
130install -d $RPM_BUILD_ROOT{%{_appdir},%{_bindir},%{_pixmapsdir},%{_desktopdir}}
131cp -l build.txt $RPM_BUILD_ROOT/cp-test && l=l && rm -f $RPM_BUILD_ROOT/cp-test
132cp -a$l bin help lib license plugins $RPM_BUILD_ROOT%{_appdir}
133ln -s %{_pixmapsdir}/%{product}.svg $RPM_BUILD_ROOT%{_appdir}/bin
109e0602 134cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
cf6bfaea 135cp -p %{product}.svg $RPM_BUILD_ROOT%{_pixmapsdir}
b4f57b33 136ln -s %{_appdir}/bin/%{product}.sh $RPM_BUILD_ROOT%{_bindir}/%{product}
cf6bfaea
ER
137
138%clean
139rm -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
This page took 0.1782 seconds and 4 git commands to generate.