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