]> git.pld-linux.org Git - packages/erlang.git/blame - erlang.spec
- up to 22.2.4
[packages/erlang.git] / erlang.spec
CommitLineData
a57a4f81
AM
1# NOTE: Building requires working DNS setup. Build may hang
2# even if _only_ first dns specified in resolv.conf
3# is unreachable.
7863299b
ER
4# TODO
5# - separate -devel (at least header files!)
6# - modularize (odbc, etc)
1bfec8a4 7# - manuals to %{_mandir}
9dab2fdc 8# - investigate fPIC.patch
3bb4a699
JK
9#
10# Conditional build:
11%bcond_with java # with Java support
38af531e 12%bcond_without odbc # without unixODBC support
9a059664 13#
c7068bd4 14Summary: OpenSource Erlang/OTP
285f449f 15Summary(pl.UTF-8): Erlang/OTP z otwartymi źródłami
c6ed8a25 16Name: erlang
69434f41 17Version: 22.2.4
862a8417 18Release: 1
e6c74a08 19Epoch: 2
9a059664 20%define _version %(echo %{version} | tr _ -)
f3cae02e 21License: APLv2
c7068bd4 22Group: Development/Languages
862a8417 23Source0: https://github.com/erlang/otp/archive/OTP-%{version}.tar.gz
69434f41 24# Source0-md5: ab584b0235f1f41284b026d9a8f35426
3921da30
AM
25Source2: epmd.service
26Source3: epmd.socket
27Source4: epmd@.service
28Source5: epmd@.socket
d6d0a605 29Patch0: %{name}-fPIC.patch
83a5839d 30Patch1: x32.patch
6f79b258
JB
31# disable pdf docs (require libxslt-progs and fop > 1.0, with -cache option)
32Patch2: %{name}-no-fop.patch
c7068bd4 33URL: http://www.erlang.org/
9a059664 34%{?with_java:BuildRequires: /usr/bin/jar}
5c54a479 35BuildRequires: autoconf
d6d0a605 36BuildRequires: automake
5c54a479 37BuildRequires: flex
9a059664 38%{?with_java:BuildRequires: jdk >= 1.2}
e6190289 39BuildRequires: ncurses-devel
52fa868e 40BuildRequires: openssl-devel >= 0.9.7
be00b460 41BuildRequires: openssl-tools
5c54a479 42BuildRequires: perl-base
3921da30 43BuildRequires: xorg-lib-libX11-devel
38af531e 44%if %{with odbc}
9a059664 45BuildRequires: unixODBC-devel
38af531e 46%else
9a059664 47BuildConflicts: unixODBC-devel
38af531e 48%endif
3921da30
AM
49Requires: systemd-units >= 38
50Requires(post,preun,postun): systemd-units >= 38
c7068bd4 51BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
9a059664 52
83a5839d 53%define _erl_target %(echo %{_build}%{?_gnu} | sed -e's/amd64/x86_64/;s/athlon/i686/;s/ppc/powerpc/;s/x32/x86_64/')
c7068bd4
JK
54
55%description
56Erlang is a programming language designed at the Ericsson Computer
57Science Laboratory. Open-source Erlang is being released to help
58encourage the spread of Erlang outside Ericsson.
5c54a479 59
9ac92939
JR
60%description -l pl.UTF-8
61Erlang to język programowania opracowany w Ericsson Computer Science
62Laboratory. Open-source Erlang został wydany, aby pomóc w
5c54a479
JB
63rozpowszechnianiu Erlanga poza Ericssonem.
64
c7068bd4 65%prep
862a8417 66%setup -q -n otp-OTP-%{_version}
43071f9a 67#%patch0 -p1
83a5839d 68%patch1 -p1
6f79b258 69%patch2 -p1
c7068bd4
JK
70
71%build
862a8417
AM
72./otp_build autoconf
73
3bb4a699 74%configure \
1485134d 75%ifarch sparc
76 CFLAGS="%{rpmcflags} -mv8plus" \
83a5839d
AM
77%endif
78%ifarch x32
79 --disable-hipe \
1485134d 80%endif
3921da30
AM
81 --disable-silent-rules \
82 --enable-smp-support \
1907c92f 83 --with-javac%{!?with_java:=no}
a952def8 84rm -f lib/ssl/SKIP
c7068bd4 85ERL_TOP=`pwd`; export ERL_TOP
82844de3 86 %{__make} -j1 \
6cba5783 87 TARGET="%{_erl_target}" \
8738d875 88 || { find . -name erl_crash.dump | xargs cat ; exit 1 ; }
c7068bd4 89
862a8417
AM
90%{__make} -j1 docs
91
c7068bd4
JK
92%install
93rm -rf $RPM_BUILD_ROOT
94
64f81501 95%{__make} -j1 install \
e043a03d 96 TARGET="%{_erl_target}" \
3685cbd2
JK
97 INSTALL_PREFIX=$RPM_BUILD_ROOT
98
862a8417
AM
99env ERL_LIBS="$RPM_BUILD_ROOT%{_libdir}/erlang/lib" \
100 %{__make} install-docs \
101 DESTDIR=$RPM_BUILD_ROOT
102
3921da30
AM
103install -D -p %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/epmd.service
104install -D -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/epmd.socket
105install -D -p %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/epmd@.service
106install -D -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}/epmd@.socket
107
a398297e 108%{__sed} -i -e"s#$RPM_BUILD_ROOT##" \
c6ed8a25 109 $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/{erl,start,start_erl}
3685cbd2 110
a398297e
JB
111%{__sed} -i -e '1s,/usr/bin/env escript,/usr/bin/escript,' \
112 $RPM_BUILD_ROOT%{_libdir}/%{name}/lib/diameter-*/bin/diameterc \
113 $RPM_BUILD_ROOT%{_libdir}/%{name}/lib/erl_docgen-*/priv/bin/{codeline_preprocessing,xml_from_edoc}.escript \
114 $RPM_BUILD_ROOT%{_libdir}/%{name}/lib/reltool-*/examples/{display_args,mnesia_core_dump_viewer} \
115 $RPM_BUILD_ROOT%{_libdir}/%{name}/lib/snmp-*/bin/snmpc \
116 $RPM_BUILD_ROOT%{_libdir}/%{name}/lib/snmp-*/src/compiler/snmpc.src
117
862a8417
AM
118#cp -r man $RPM_BUILD_ROOT%{_libdir}/%{name}
119#find $RPM_BUILD_ROOT%{_libdir}/%{name}/man -type f | xargs gzip -9
c7068bd4 120
e043a03d
JK
121# some files in the library need +x, so we build the list here
122echo "%%defattr(644,root,root,755)" > lib.list
123find $RPM_BUILD_ROOT%{_libdir}/%{name}/lib -type d \
a398297e 124 | %{__sed} -e"s#^$RPM_BUILD_ROOT%{_libdir}/%{name}/#%%dir %%{_libdir}/%%{name}/#" >> lib.list
e043a03d 125find $RPM_BUILD_ROOT%{_libdir}/%{name}/lib -type f -perm -500 \
a398297e 126 | %{__sed} -e"s#^$RPM_BUILD_ROOT%{_libdir}/%{name}/#%%attr(755,root,root) %%{_libdir}/%%{name}/#" >> lib.list
e043a03d 127find $RPM_BUILD_ROOT%{_libdir}/%{name}/lib -type f '!' -perm -500 \
a398297e 128 | %{__sed} -e"s#^$RPM_BUILD_ROOT%{_libdir}/%{name}/#%%{_libdir}/%%{name}/#" >> lib.list
e043a03d 129
1907c92f
JB
130%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-*/lib
131%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-*/include/internal
43071f9a 132
c7068bd4
JK
133%clean
134rm -rf $RPM_BUILD_ROOT
135
3921da30
AM
136%post
137%systemd_post epmd.service
138%systemd_post epmd@.service
139
140%preun
141%systemd_preun epmd.service
142%systemd_preun epmd@.service
143
144%postun
145%systemd_reload
146
e043a03d 147%files -f lib.list
c7068bd4 148%defattr(644,root,root,755)
862a8417 149%doc AUTHORS
1907c92f
JB
150%attr(755,root,root) %{_bindir}/ct_run
151%attr(755,root,root) %{_bindir}/dialyzer
152%attr(755,root,root) %{_bindir}/epmd
153%attr(755,root,root) %{_bindir}/erl
154%attr(755,root,root) %{_bindir}/erlc
155%attr(755,root,root) %{_bindir}/escript
156%attr(755,root,root) %{_bindir}/run_erl
1907c92f 157%attr(755,root,root) %{_bindir}/to_erl
391c9c83 158%attr(755,root,root) %{_bindir}/typer
3685cbd2 159%dir %{_libdir}/erlang
c6ed8a25 160%dir %{_libdir}/%{name}/bin
065a0167 161%attr(755,root,root) %{_libdir}/%{name}/bin/ct_run
5482576a 162%attr(755,root,root) %{_libdir}/%{name}/bin/dialyzer
c6ed8a25
JK
163%attr(755,root,root) %{_libdir}/%{name}/bin/epmd
164%attr(755,root,root) %{_libdir}/%{name}/bin/erl
165%attr(755,root,root) %{_libdir}/%{name}/bin/erlc
82844de3 166%attr(755,root,root) %{_libdir}/%{name}/bin/escript
2d1c147c 167%attr(755,root,root) %{_libdir}/%{name}/bin/no_dot_erlang.boot
c6ed8a25
JK
168%attr(755,root,root) %{_libdir}/%{name}/bin/run_erl
169%attr(755,root,root) %{_libdir}/%{name}/bin/start
170%attr(755,root,root) %{_libdir}/%{name}/bin/start_erl
171%attr(755,root,root) %{_libdir}/%{name}/bin/to_erl
82844de3 172%attr(755,root,root) %{_libdir}/%{name}/bin/typer
c6ed8a25
JK
173%{_libdir}/%{name}/bin/start*.*
174%dir %{_libdir}/%{name}/erts-*
175%{_libdir}/%{name}/erts-*/doc
176%{_libdir}/%{name}/erts-*/man
177%{_libdir}/%{name}/erts-*/src
43071f9a
JK
178%{_libdir}/%{name}/erts-*/include
179#%{_libdir}/%{name}/erts-*/*.ear
c6ed8a25
JK
180%dir %{_libdir}/%{name}/erts-*/bin
181%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/beam*
065a0167 182%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/ct_run
5482576a 183%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/dialyzer
75067de0 184%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/dyn_erl
c6ed8a25
JK
185%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/e*
186%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/heart*
187%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/inet_gethost
188%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/run_erl
189%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/start
190%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/to_erl
49d2322c 191%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/typer
c6ed8a25 192%{_libdir}/%{name}/erts-*/bin/start*.*
e043a03d 193# (file list dynamically generated) %{_libdir}/%{name}/lib
c6ed8a25
JK
194%dir %{_libdir}/%{name}/misc
195%attr(755,root,root) %{_libdir}/%{name}/misc/*
196%{_libdir}/%{name}/releases
197%{_libdir}/%{name}/usr
198%doc %{_libdir}/%{name}/man
199%attr(755,root,root) %{_libdir}/%{name}/Install
3921da30
AM
200
201%{systemdunitdir}/epmd.service
202%{systemdunitdir}/epmd.socket
203%{systemdunitdir}/epmd@.service
204%{systemdunitdir}/epmd@.socket
This page took 0.083367 seconds and 4 git commands to generate.