]> git.pld-linux.org Git - packages/intellij-idea-ultimate.git/blame - intellij-idea-ultimate.spec
up to 2017.1.3
[packages/intellij-idea-ultimate.git] / intellij-idea-ultimate.spec
CommitLineData
7975955d
ER
1%define product idea
2%define proddir %{product}-IU
3%include /usr/lib/rpm/macros.java
4Summary: IntelliJ IDEA - The Most Intelligent Java IDE
5Name: intellij-idea-ultimate
1c01b200 6Version: 2017.1.3
e2927df0 7Release: 1
7975955d
ER
8License: IntelliJ IDEA Commercial
9Group: Development/Tools
af1d6839 10Source0: http://download.jetbrains.com/idea/ideaIU-%{version}.tar.gz
1c01b200 11# NoSource0-md5: 00ce51d82883c9060b810ef6b8a1504c
7975955d
ER
12NoSource: 0
13Source1: %{product}.desktop
14Patch0: xdg-paths.patch
15URL: http://www.jetbrains.org/
16BuildRequires: desktop-file-utils
17BuildRequires: rpm-javaprov
18BuildRequires: rpmbuild(macros) >= 1.596
19Requires: %{name}-libs = %{version}-%{release}
20Requires: desktop-file-utils
00b4690e 21Requires: jre >= 1.8
2da89e54 22%ifarch %{x8664}
5a014b00 23Suggests: %{name}-jre = %{version}-%{release}
2da89e54 24%endif
c8f36c7d 25Suggests: java-jdbc-mysql
7975955d 26Suggests: jdk >= 1.6
8c33db2f
JP
27Suggests: open
28Suggests: python
7975955d 29Conflicts: intellij-idea
c8f36c7d 30Conflicts: java-jdbc-mysql < 5.1.22
7975955d
ER
31BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32
33# disable debuginfo package, not useful
34%define _enable_debug_packages 0
35
36# don't strip fsnotifier, it's size is checked for "outdated binary"
37# https://bugs.archlinux.org/task/34703
38# 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
39%define _noautostrip .*/fsnotifier.*
40
41# use /usr/lib, 64bit files do not conflict with 32bit files (64 suffix)
42# this allows to install both arch files and to use 32bit jdk on 64bit os
43%define _appdir %{_prefix}/lib/%{proddir}
44
45# rpm5 is so damn slow, so i use this for development:
46%define _noautoreqfiles .*\.jar
47
48%description
49IntelliJ IDEA is a code-centric IDE focused on developer productivity.
50The editor deeply understands your code and knows its way around the
51codebase, makes great suggestions right when you need them, and is
52always ready to help you shape your code.
53
54%package libs
55Summary: Libraries for IntelliJ IDEA
56Group: Libraries/Java
57%if "%{_rpmversion}" >= "5"
58BuildArch: noarch
59%endif
60
61%description libs
62Libraries for IntelliJ IDEA.
63
5a014b00
JP
64%package jre
65Summary: Bundled JRE recommended for running IntelliJ IDEA
66Group: Libraries/Java
49dcdda8 67Requires: %{name} = %{version}-%{release}
5a014b00
JP
68
69%description jre
70Bundled JRE recommended for running IntelliJ IDEA.
71
7975955d 72%prep
4063f81f
ER
73%setup -qc
74mv %{proddir}-*/* .
7975955d
ER
75%patch0 -p1
76
77# keep only single arch files (don't want to pull 32bit deps by default),
78# if you want to mix, install rpm from both arch
79%ifarch %{ix86}
80rm bin/%{product}64.vmoptions
81rm bin/fsnotifier64
7975955d
ER
82rm bin/libyjpagent-linux64.so
83%endif
84%ifarch %{x8664}
85rm bin/%{product}.vmoptions
86rm bin/fsnotifier
7975955d
ER
87rm bin/libyjpagent-linux.so
88%endif
59765403 89rm bin/fsnotifier-arm
7975955d
ER
90chmod a+rx bin/*.so bin/fsnotifier*
91mv bin/%{product}.png .
92
93# cleanup backups after patching
94find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
95
96%install
97rm -rf $RPM_BUILD_ROOT
98install -d $RPM_BUILD_ROOT{%{_appdir},%{_bindir},%{_pixmapsdir},%{_desktopdir}}
99cp -l build.txt $RPM_BUILD_ROOT/cp-test && l=l && rm -f $RPM_BUILD_ROOT/cp-test
2da89e54
JP
100cp -a$l bin help lib license plugins $RPM_BUILD_ROOT%{_appdir}
101%ifarch %{x8664}
102cp -a$l jre64 $RPM_BUILD_ROOT%{_appdir}
103%endif
7975955d
ER
104cp -p %{product}.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{product}.png
105ln -s %{_pixmapsdir}/%{product}.png $RPM_BUILD_ROOT%{_appdir}/bin/%{product}.png
106cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}/%{product}.desktop
107ln -s %{_appdir}/bin/%{product}.sh $RPM_BUILD_ROOT%{_bindir}/%{product}
59765403
JP
108rm -r $RPM_BUILD_ROOT%{_appdir}/plugins/gradle/lib/native-platform-{freebsd,osx,windows}*
109rm -r $RPM_BUILD_ROOT%{_appdir}/plugins/tfsIntegration/lib/native/{aix,freebsd,hpux,macosx,solaris,win32}
110rm -r $RPM_BUILD_ROOT%{_appdir}/plugins/tfsIntegration/lib/native/linux/{arm,ppc}
7975955d
ER
111
112desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/%{product}.desktop
113
114%clean
115rm -rf $RPM_BUILD_ROOT
116
117%post
118%update_desktop_database
119
120%postun
121%update_desktop_database
122
123# base package contains arch specific files
124%files
125%defattr(644,root,root,755)
126%doc Install-Linux-tar.txt
127%attr(755,root,root) %{_bindir}/%{product}
128%dir %{_appdir}/bin
129%{_appdir}/bin/%{product}*.vmoptions
130%{_appdir}/bin/%{product}.png
131%{_appdir}/bin/%{product}.properties
132%{_appdir}/bin/appletviewer.policy
133%{_appdir}/bin/log.xml
134%attr(755,root,root) %{_appdir}/bin/%{product}.sh
bdc3065e 135%attr(755,root,root) %{_appdir}/bin/format.sh
7975955d
ER
136%attr(755,root,root) %{_appdir}/bin/inspect.sh
137%attr(755,root,root) %{_appdir}/bin/fsnotifier*
7975955d 138%attr(755,root,root) %{_appdir}/bin/libyjpagent*.so
bdc3065e
JP
139%attr(755,root,root) %{_appdir}/bin/printenv.py
140%attr(755,root,root) %{_appdir}/bin/restart.py
7975955d
ER
141%{_desktopdir}/%{product}.desktop
142%{_pixmapsdir}/%{product}.png
143
144# this package contains arch independant files
145%files libs
146%defattr(644,root,root,755)
147%dir %{_appdir}
148%{_appdir}/lib
149%{_appdir}/license
150%{_appdir}/plugins
151%{_appdir}/help
5a014b00 152
2da89e54 153%ifarch %{x8664}
5a014b00
JP
154%files jre
155%defattr(644,root,root,755)
2da89e54
JP
156%dir %{_appdir}/jre64
157%dir %{_appdir}/jre64/bin
158%attr(755,root,root) %{_appdir}/jre64/bin/java
159%attr(755,root,root) %{_appdir}/jre64/bin/jjs
160%attr(755,root,root) %{_appdir}/jre64/bin/keytool
161%attr(755,root,root) %{_appdir}/jre64/bin/orbd
162%attr(755,root,root) %{_appdir}/jre64/bin/pack200
163%attr(755,root,root) %{_appdir}/jre64/bin/policytool
164%attr(755,root,root) %{_appdir}/jre64/bin/rmid
165%attr(755,root,root) %{_appdir}/jre64/bin/rmiregistry
166%attr(755,root,root) %{_appdir}/jre64/bin/servertool
167%attr(755,root,root) %{_appdir}/jre64/bin/tnameserv
168%attr(755,root,root) %{_appdir}/jre64/bin/unpack200
169%{_appdir}/jre64/lib
170%{_appdir}/jre64/ASSEMBLY_EXCEPTION
171%{_appdir}/jre64/LICENSE
172%{_appdir}/jre64/release
173%{_appdir}/jre64/THIRD_PARTY_README
174%endif
This page took 0.082463 seconds and 4 git commands to generate.