]>
Commit | Line | Data |
---|---|---|
67068d1f | 1 | %define product phpstorm |
24daebe3 | 2 | %include /usr/lib/rpm/macros.java |
67068d1f ER |
3 | Summary: PhpStorm Early Access Program |
4 | Name: phpstorm-eap | |
415d67ea | 5 | Version: 173.3531.17 |
c2dbc329 | 6 | Release: 1 |
01772af1 | 7 | # TODO: figure out what's the licensing and redistribution |
265003bd ER |
8 | License: ? |
9 | Group: Development/Tools | |
67068d1f | 10 | Source0: http://download.jetbrains.com/webide/PhpStorm-EAP-%{version}.tar.gz |
415d67ea | 11 | # NoSource0-md5: 26a840a33a754f2d1b883b43f483623b |
265003bd | 12 | NoSource: 0 |
67068d1f ER |
13 | Source1: %{product}.desktop |
14 | Source2: %{product}.py | |
8c2db59b | 15 | Patch0: pld.patch |
67068d1f | 16 | URL: https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+Early+Access+Program |
24daebe3 ER |
17 | BuildRequires: jpackage-utils |
18 | BuildRequires: rpm-javaprov | |
19 | BuildRequires: rpmbuild(macros) >= 1.300 | |
265003bd | 20 | BuildRequires: unzip |
cc0a19f5 | 21 | Requires: jre-X11 >= 1.7 |
8c2db59b | 22 | Requires: which |
71ebdb62 ER |
23 | Suggests: cvs |
24 | Suggests: git-core | |
88bc6db6 | 25 | Suggests: java-jdbc-mysql |
71ebdb62 | 26 | Suggests: subversion |
88bc6db6 | 27 | Conflicts: java-jdbc-mysql < 5.1.22 |
265003bd ER |
28 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
29 | ||
1f07e370 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 | ||
01772af1 | 35 | # use /usr/lib, 64bit files do not conflict with 32bit files (64 suffix) |
9c78341a | 36 | # this allows to install both arch files and to use 32bit jdk on 64bit os |
67068d1f | 37 | %define _appdir %{_prefix}/lib/%{product} |
265003bd ER |
38 | |
39 | %description | |
40 | PhpStorm is a lightweight and smart PHP IDE focused on developer | |
41 | productivity that deeply understands your code, provides smart code | |
42 | completion, quick navigation and on-the-fly error checking. It is | |
43 | always ready to help you shape your code, run unit-tests or provide | |
44 | visual debugging. | |
45 | ||
46 | Note: PhpStorm includes all the functionality of WebStorm (HTML/CSS | |
47 | Editor, JavaScript Editor) and adds full-fledged support for PHP. | |
48 | ||
49 | %prep | |
67068d1f | 50 | %setup -qn PhpStorm-%{version} |
ae6c8231 ER |
51 | |
52 | # keep only single arch files (don't want to pull 32bit deps by default), | |
53 | # if you want to mix, install rpm from both arch | |
265003bd ER |
54 | %ifarch %{ix86} |
55 | rm bin/fsnotifier64 | |
ae6c8231 ER |
56 | rm bin/libyjpagent-linux64.so |
57 | rm bin/phpstorm64.vmoptions | |
1444622e | 58 | rm -r lib/libpty/linux/x86_64 |
265003bd ER |
59 | %endif |
60 | %ifarch %{x8664} | |
9c78341a | 61 | rm bin/fsnotifier |
ae6c8231 ER |
62 | rm bin/libyjpagent-linux.so |
63 | rm bin/phpstorm.vmoptions | |
1444622e | 64 | rm -r lib/libpty/linux/x86 |
265003bd | 65 | %endif |
794e16f3 | 66 | rm bin/fsnotifier-arm |
8c2db59b | 67 | %patch0 -p1 |
794e16f3 | 68 | chmod a+rx bin/*.so bin/fsnotifier* lib/libpty/linux/*/libpty.so |
da262f07 | 69 | mv bin/phpstorm.png . |
265003bd | 70 | |
d2ed7e5a ER |
71 | # cleanup backups after patching |
72 | find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f | |
73 | ||
265003bd ER |
74 | %install |
75 | rm -rf $RPM_BUILD_ROOT | |
76 | install -d $RPM_BUILD_ROOT{%{_appdir},%{_bindir},%{_pixmapsdir},%{_desktopdir}} | |
1720293b | 77 | cp -l build.txt $RPM_BUILD_ROOT/cp-test && l=l && rm -f $RPM_BUILD_ROOT/cp-test |
794e16f3 | 78 | cp -a$l bin help lib plugins $RPM_BUILD_ROOT%{_appdir} |
67068d1f ER |
79 | ln -s %{_pixmapsdir}/%{product}.png $RPM_BUILD_ROOT%{_appdir}/bin |
80 | cp -p phpstorm.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{product}.png | |
1720293b | 81 | cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} |
457ca289 | 82 | install -p %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/pstorm |
67068d1f | 83 | ln -s pstorm $RPM_BUILD_ROOT%{_bindir}/%{product} |
265003bd ER |
84 | |
85 | %clean | |
86 | rm -rf $RPM_BUILD_ROOT | |
87 | ||
88 | %files | |
89 | %defattr(644,root,root,755) | |
67068d1f | 90 | %attr(755,root,root) %{_bindir}/%{product} |
17c1946d | 91 | %attr(755,root,root) %{_bindir}/pstorm |
265003bd ER |
92 | %dir %{_appdir} |
93 | %{_appdir}/help | |
265003bd ER |
94 | %{_appdir}/plugins |
95 | %dir %{_appdir}/bin | |
67068d1f ER |
96 | %{_appdir}/bin/%{product}*.vmoptions |
97 | %{_appdir}/bin/%{product}.png | |
265003bd ER |
98 | %{_appdir}/bin/idea.properties |
99 | %{_appdir}/bin/log.xml | |
67068d1f | 100 | %attr(755,root,root) %{_appdir}/bin/%{product}.sh |
da262f07 ER |
101 | %attr(755,root,root) %{_appdir}/bin/*.py |
102 | %attr(755,root,root) %{_appdir}/bin/format.sh | |
9c78341a | 103 | %attr(755,root,root) %{_appdir}/bin/fsnotifier* |
da262f07 | 104 | %attr(755,root,root) %{_appdir}/bin/inspect.sh |
ae6c8231 | 105 | %attr(755,root,root) %{_appdir}/bin/libyjpagent-linux*.so |
1444622e ER |
106 | %dir %{_appdir}/lib |
107 | %{_appdir}/lib/*.jar | |
1444622e ER |
108 | %dir %{_appdir}/lib/libpty |
109 | %dir %{_appdir}/lib/libpty/linux | |
110 | %dir %{_appdir}/lib/libpty/linux/x86* | |
111 | %attr(755,root,root) %{_appdir}/lib/libpty/linux/x86*/libpty.so | |
67068d1f ER |
112 | %{_desktopdir}/%{product}.desktop |
113 | %{_pixmapsdir}/%{product}.png |