X-Git-Url: http://git.pld-linux.org/?p=packages%2Ferlang.git;a=blobdiff_plain;f=erlang.spec;h=4be3f1c2f3784cdb6a396dfdfb2d2c537ae33ad6;hp=f8278985a740daebfb3262dddb328e0d3e393cad;hb=5ccf0d3ed240fd508d21580544fba65ba32c067a;hpb=1ad6c1499a65d43987e87e8536ef16470e65f9c7 diff --git a/erlang.spec b/erlang.spec index f827898..4be3f1c 100644 --- a/erlang.spec +++ b/erlang.spec @@ -1,52 +1,61 @@ +# NOTE: Building requires working DNS setup. Build may hang +# even if _only_ first dns specified in resolv.conf +# is unreachable. +# TODO +# - separate -devel (at least header files!) +# - modularize (odbc, etc) +# - manuals to %{_mandir} +# - investigate fPIC.patch # # Conditional build: %bcond_with java # with Java support %bcond_without odbc # without unixODBC support -# +# Summary: OpenSource Erlang/OTP -Summary(pl): Erlang/OTP z otwartymi ¼ród³ami +Summary(pl.UTF-8): Erlang/OTP z otwartymi źródłami Name: erlang -Version: R10B_9 -Release: 1 +# A - unstable, B - stable line, keep stable +Version: R14B03 +Release: 3 Epoch: 1 +%define _version %(echo %{version} | tr _ -) License: distributable Group: Development/Languages -%define _version %(echo %{version} | tr _ -) Source0: http://www.erlang.org/download/otp_src_%{_version}.tar.gz -# Source0-md5: 05791e9097f36202eb705df2a1db6500 -Source1: http://www.erlang.org/download/otp_doc_man_R10B-9.tar.gz -# Source1-md5: 051cd9893b36313f20a420bc2491905c +# Source0-md5: 7979e662d11476b97c462feb7c132fb7 +Source1: http://www.erlang.org/download/otp_doc_man_%{_version}.tar.gz +# Source1-md5: 357f54b174bb29d41fee97c063a47e8f Patch0: %{name}-fPIC.patch -Patch1: %{name}-optional_java.patch -Patch2: %{name}-hipe_optimistic_regalloc_once_only.patch +Patch1: %{name}-tinfo.patch +Patch2: %{name}-link.patch URL: http://www.erlang.org/ -BuildRequires: XFree86-devel +%{?with_java:BuildRequires: /usr/bin/jar} +BuildRequires: xorg-lib-libX11-devel BuildRequires: autoconf BuildRequires: automake -%{?with_java:BuildRequires: jdk >= 1.2} -%{?with_java:BuildRequires: /usr/bin/jar} BuildRequires: flex +%{?with_java:BuildRequires: jdk >= 1.2} BuildRequires: ncurses-devel BuildRequires: openssl-devel >= 0.9.7 -Buildrequires: openssl-tools +BuildRequires: openssl-tools BuildRequires: perl-base %if %{with odbc} -BuildRequires: unixODBC-devel +BuildRequires: unixODBC-devel %else -BuildConflicts: unixODBC-devel +BuildConflicts: unixODBC-devel %endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) - -%define _erl_target %(echo %{_build} | sed -e's/amd64/x86_64/;s/athlon/i686/;s/ppc/powerpc/') + +%define _erl_target %(echo %{_build}-gnu | sed -e's/amd64/x86_64/;s/athlon/i686/;s/ppc/powerpc/') %description Erlang is a programming language designed at the Ericsson Computer Science Laboratory. Open-source Erlang is being released to help encourage the spread of Erlang outside Ericsson. -%description -l pl -Erlang to jêzyk programowania opracowany w Ericsson Computer Science -Laboratory. Open-source Erlang zosta³ wydany, aby pomóc w +%description -l pl.UTF-8 +Erlang to język programowania opracowany w Ericsson Computer Science +Laboratory. Open-source Erlang został wydany, aby pomóc w rozpowszechnianiu Erlanga poza Ericssonem. %prep @@ -58,33 +67,27 @@ rozpowszechnianiu Erlanga poza Ericssonem. %build find . -name config.sub | xargs -n 1 cp -f /usr/share/automake/config.sub -%{__autoconf} -cd lib -%{__autoconf} -cd erl_interface -%{__autoconf} -cd ../gs -%{__autoconf} -cd ../megaco -%{__autoconf} -cd ../odbc -%{__autoconf} -cd ../snmp -%{__autoconf} -cd ../../erts/ -%{__autoconf} -cd .. +curd=$(pwd) +for i in $(find . -type f -name configure.in); do + cd $(dirname $i) + %{__autoconf} + cd $curd +done %configure \ - --with%{!?with_java:out}-java +%ifarch sparc + CFLAGS="%{rpmcflags} -mv8plus" \ +%endif + --with%{!?with_java:out}-javac +rm -f lib/ssl/SKIP ERL_TOP=`pwd`; export ERL_TOP -LD_ASSUME_KERNEL=2.4.19 %{__make} \ + %{__make} -j1 \ TARGET="%{_erl_target}" \ || { find . -name erl_crash.dump | xargs cat ; exit 1 ; } %install rm -rf $RPM_BUILD_ROOT -%{__make} install \ +%{__make} -j1 install \ TARGET="%{_erl_target}" \ INSTALL_PREFIX=$RPM_BUILD_ROOT @@ -93,11 +96,11 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-*/*.html sed -i -e"s#$RPM_BUILD_ROOT##" \ $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/{erl,start,start_erl} -for l in erl erlc ; do +for l in erl erlc escript dialyzer epmd run_erl to_erl typer; do ln -sf %{_libdir}/%{name}/bin/$l $RPM_BUILD_ROOT%{_bindir} done ERTSDIR=`echo $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-* | sed -e"s#^$RPM_BUILD_ROOT##"` -for l in ear ecc elink escript ; do +for l in epmd ; do ln -sf $ERTSDIR/bin/$l $RPM_BUILD_ROOT%{_bindir} done ln -sf $ERTSDIR/bin/epmd $RPM_BUILD_ROOT%{_libdir}/%{name}/bin @@ -114,7 +117,7 @@ find $RPM_BUILD_ROOT%{_libdir}/%{name}/lib -type f -perm -500 \ find $RPM_BUILD_ROOT%{_libdir}/%{name}/lib -type f '!' -perm -500 \ | sed -e"s#^$RPM_BUILD_ROOT%{_libdir}/%{name}/#%%{_libdir}/%%{name}/#" >> lib.list -rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-*/lib/internal +rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-*/lib rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/erts-*/include/internal %clean @@ -122,17 +125,22 @@ rm -rf $RPM_BUILD_ROOT %files -f lib.list %defattr(644,root,root,755) -%doc AUTHORS EPLICENCE README COPYRIGHT +%doc AUTHORS EPLICENCE COPYRIGHT %attr(755,root,root) %{_bindir}/* %dir %{_libdir}/erlang %dir %{_libdir}/%{name}/bin +%attr(755,root,root) %{_libdir}/%{name}/bin/ct_run +%attr(755,root,root) %{_libdir}/%{name}/bin/dialyzer %attr(755,root,root) %{_libdir}/%{name}/bin/epmd %attr(755,root,root) %{_libdir}/%{name}/bin/erl %attr(755,root,root) %{_libdir}/%{name}/bin/erlc +%attr(755,root,root) %{_libdir}/%{name}/bin/escript %attr(755,root,root) %{_libdir}/%{name}/bin/run_erl +%attr(755,root,root) %{_libdir}/%{name}/bin/run_test %attr(755,root,root) %{_libdir}/%{name}/bin/start %attr(755,root,root) %{_libdir}/%{name}/bin/start_erl %attr(755,root,root) %{_libdir}/%{name}/bin/to_erl +%attr(755,root,root) %{_libdir}/%{name}/bin/typer %{_libdir}/%{name}/bin/start*.* %dir %{_libdir}/%{name}/erts-* %{_libdir}/%{name}/erts-*/doc @@ -143,12 +151,16 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/%{name}/erts-*/bin %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/beam* %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/child* +%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/ct_run +%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/dialyzer +%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/dyn_erl %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/e* %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/heart* %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/inet_gethost %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/run_erl %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/start %attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/to_erl +%attr(755,root,root) %{_libdir}/%{name}/erts-*/bin/typer %{_libdir}/%{name}/erts-*/bin/start*.* # (file list dynamically generated) %{_libdir}/%{name}/lib %dir %{_libdir}/%{name}/misc