Группа :: Разработка/Прочее
Пакет: erlang
Главная Изменения Спек Патчи Загрузить Bugs and FR
Name: erlang
Version: R10B.10
Release: alt0.M24.2
Summary: A programming language developed by Ericsson
License: EPL
Group: Development/Other
Packager: Plugnikov A. Mike <amike at altlinux.ru>
URL: http://www.erlang.org
Source0: otp_src.tar.bz2
Source1: otp_doc_man.tar.bz2
Source2: otp_doc_html.tar.bz2
Source3: %name.el
Source4: %name-site-start.el
Source5: README.erlang_mode
Source6: %name-dirs
#Не работает. Хочет внутренние структуры.
Patch1: %name-alt-remove-static-libz.patch
BuildPreReq: /proc
BuildPreReq: emacs-common
BuildPreReq: gcc-c++ gcc libssl-devel libncurses-devel openssl flex
BuildPreReq: tk-devel j2se1.4-sun-devel zlib-devel libunixODBC-devel
%description
Erlang is a programming language developed at Ericsson Computer
Science Laboratory. Erlang provides many features which are more
commonly associated with an operating system: concurrent processes,
scheduling, memory management, distribution, networking, etc.
%package -n emacs-mode-erlang
Summary: Erlang mode for GNU Emacs
Group: Editors
Requires: emacs-base
%description -n emacs-mode-erlang
Erlang mode for GNU Emacs.
%package manual
Summary: Documentatinon for Erlang in HTML format
Group: Development/Other
Requires: %name = %version-%release
%description manual
Ducumentation for Erlang in HTML format.
%package manpages
Summary: Manual pages for Erlang
Group: Development/Other
Requires: %name = %version-%release
%description manpages
Manual pages for Erlang programming language.
%package visual
Summary: Standart visual applications for Erlang
Group: Development/Other
Requires: %name = %version-%release
Requires: tk
%description visual
Standard visual applications for Erlang programming language.
%package odbc
Summary: ODBC support for Erlang
Group: Development/Other
Requires: %name = %version-%release
%description odbc
ODBC support for Erlang programming language.
%prep
%setup -qn otp_src
%__cp %SOURCE6 .
%__mkdir tmp
%__tar -C tmp -jxf %SOURCE1
%__tar -C tmp -jxf %SOURCE2
#%patch1
for i in $(cat erlang-dirs);do
[ ! -d $i ] && %__mkdir_p $i
done
%build
#autoreconf -fisv
./configure \
--prefix=%_prefix \
--libdir=%_libdir \
--mandir=%_mandir \
--enable-hipe \
--disable-erlang-mandir \
--with-ssl
%make
%install
%set_verify_elf_method textrel=relaxed
%add_findreq_skiplist %_libdir/%name/erts-*/bin/*
%make_install INSTALL_PREFIX=%buildroot install
%__mkdir_p %buildroot%_docdir/%name-%version/manual
%__mkdir_p %buildroot%_emacslispdir
%__mkdir_p %buildroot%_sysconfdir/emacs/site-start.d
%__mkdir_p %buildroot%_mandir
%__install -m644 %SOURCE3 %buildroot%_emacslispdir
%__install -m644 %SOURCE4 %buildroot/%_sysconfdir/emacs/site-start.d/erlang.el
%__install -m644 %SOURCE5 %buildroot%_docdir/%name-%version
%__cp EPLICENCE %buildroot%_docdir/%name-%version/LICENCE
%__cp AUTHORS %buildroot%_docdir/%name-%version/AUTHORS
%__mv tmp/otp_doc_html/{COPYRIGHT,PR.template,README} %buildroot%_docdir/%name-%version
%__mv tmp/otp_doc_html/* %buildroot%_docdir/%name-%version/manual
%__mv tmp/otp_doc_man/man/* %buildroot%_mandir
pushd .
cd %buildroot%_man3dir
for i in lib.3* crypto.3* inet.3* ssl.3* queue.3* random.3* rpc.3* string.3* ; do
%__mv -f $i erl_$i
done
cd %buildroot%_man6dir
for i in crypto.6* ssl.6* snmp.6* ; do
%__mv -f $i erl_$i
done
cd %buildroot%_emacslispdir
for i in *.el ; do
emacs -batch --eval "(progn
(setq load-path (append (list \".\") load-path))
(byte-compile-file \"$i\"))"
done
popd
%__rm %buildroot%_bindir/*
%__ln_s %_libdir/%name/bin/erl %buildroot%_bindir/erl
%__ln_s %_libdir/%name/bin/erlc %buildroot%_bindir/erlc
%__rm %buildroot%_libdir/%name/bin/epmd
%__rm %buildroot%_libdir/%name/bin/erlc
%__rm %buildroot%_libdir/%name/bin/erl
%__rm %buildroot%_libdir/%name/bin/run_erl
%__rm %buildroot%_libdir/%name/bin/start
%__rm %buildroot%_libdir/%name/bin/to_erl
%__rm %buildroot%_libdir/%name/erts-*/bin/*.src
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/epmd) \
%buildroot%_libdir/%name/bin/epmd) %buildroot%_libdir/%name/bin/epmd
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/erl) \
%buildroot%_libdir/%name/bin/erl) %buildroot%_libdir/%name/bin/erl
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/erlc) \
%buildroot%_libdir/%name/bin/erlc) %buildroot%_libdir/%name/bin/erlc
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/run_erl) \
%buildroot%_libdir/%name/bin/run_erl) %buildroot%_libdir/%name/bin/run_erl
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/start) \
%buildroot%_libdir/%name/bin/start) %buildroot%_libdir/%name/bin/start
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/to_erl) \
%buildroot%_libdir/%name/bin/to_erl) %buildroot%_libdir/%name/bin/to_erl
%__rm %buildroot%_libdir/%name/Install
%__rm -r %buildroot%_libdir/%name/misc
%__rm -r %buildroot%_libdir/%name/usr/lib
%__rm -r %buildroot%_libdir/%name/erts-*/{doc,man}
%__subst 's|ROOTDIR=.*|ROOTDIR=%_libdir/%name|' %buildroot%_libdir/%name/erts-*/bin/erl
%__subst 's|ROOTDIR=.*|ROOTDIR=%_libdir/%name|' %buildroot%_libdir/%name/erts-*/bin/start
%files
%dir %_docdir/%name-%version
%_bindir/*
%_libdir/%name
%_docdir/%name-%version/*
%exclude %_docdir/%name-%version/manual
%exclude %_libdir/%name/lib/appmon-*
%exclude %_libdir/%name/lib/debugger-*
%exclude %_libdir/%name/lib/et-*
%exclude %_libdir/%name/lib/gs-*
%exclude %_libdir/%name/lib/pman-*
%exclude %_libdir/%name/lib/toolbar-*
%exclude %_libdir/%name/lib/tv-*
%exclude %_libdir/%name/lib/odbc-*
%files visual
%_libdir/%name/lib/appmon-*
%_libdir/%name/lib/debugger-*
%_libdir/%name/lib/et-*
%_libdir/%name/lib/gs-*
%_libdir/%name/lib/pman-*
%_libdir/%name/lib/toolbar-*
%_libdir/%name/lib/tv-*
%files -n emacs-mode-erlang
%_emacslispdir/*
%_sysconfdir/emacs/site-start.d/*
%files manual
%_docdir/%name-%version/manual
%files manpages
%_man1dir/*
%_man3dir/*
%_man4dir/*
%_man6dir/*
%files odbc
%_libdir/%name/lib/odbc-*
%changelog
…
Полный changelog можно просмотреть здесь
Version: R10B.10
Release: alt0.M24.2
Summary: A programming language developed by Ericsson
License: EPL
Group: Development/Other
Packager: Plugnikov A. Mike <amike at altlinux.ru>
URL: http://www.erlang.org
Source0: otp_src.tar.bz2
Source1: otp_doc_man.tar.bz2
Source2: otp_doc_html.tar.bz2
Source3: %name.el
Source4: %name-site-start.el
Source5: README.erlang_mode
Source6: %name-dirs
#Не работает. Хочет внутренние структуры.
Patch1: %name-alt-remove-static-libz.patch
BuildPreReq: /proc
BuildPreReq: emacs-common
BuildPreReq: gcc-c++ gcc libssl-devel libncurses-devel openssl flex
BuildPreReq: tk-devel j2se1.4-sun-devel zlib-devel libunixODBC-devel
%description
Erlang is a programming language developed at Ericsson Computer
Science Laboratory. Erlang provides many features which are more
commonly associated with an operating system: concurrent processes,
scheduling, memory management, distribution, networking, etc.
%package -n emacs-mode-erlang
Summary: Erlang mode for GNU Emacs
Group: Editors
Requires: emacs-base
%description -n emacs-mode-erlang
Erlang mode for GNU Emacs.
%package manual
Summary: Documentatinon for Erlang in HTML format
Group: Development/Other
Requires: %name = %version-%release
%description manual
Ducumentation for Erlang in HTML format.
%package manpages
Summary: Manual pages for Erlang
Group: Development/Other
Requires: %name = %version-%release
%description manpages
Manual pages for Erlang programming language.
%package visual
Summary: Standart visual applications for Erlang
Group: Development/Other
Requires: %name = %version-%release
Requires: tk
%description visual
Standard visual applications for Erlang programming language.
%package odbc
Summary: ODBC support for Erlang
Group: Development/Other
Requires: %name = %version-%release
%description odbc
ODBC support for Erlang programming language.
%prep
%setup -qn otp_src
%__cp %SOURCE6 .
%__mkdir tmp
%__tar -C tmp -jxf %SOURCE1
%__tar -C tmp -jxf %SOURCE2
#%patch1
for i in $(cat erlang-dirs);do
[ ! -d $i ] && %__mkdir_p $i
done
%build
#autoreconf -fisv
./configure \
--prefix=%_prefix \
--libdir=%_libdir \
--mandir=%_mandir \
--enable-hipe \
--disable-erlang-mandir \
--with-ssl
%make
%install
%set_verify_elf_method textrel=relaxed
%add_findreq_skiplist %_libdir/%name/erts-*/bin/*
%make_install INSTALL_PREFIX=%buildroot install
%__mkdir_p %buildroot%_docdir/%name-%version/manual
%__mkdir_p %buildroot%_emacslispdir
%__mkdir_p %buildroot%_sysconfdir/emacs/site-start.d
%__mkdir_p %buildroot%_mandir
%__install -m644 %SOURCE3 %buildroot%_emacslispdir
%__install -m644 %SOURCE4 %buildroot/%_sysconfdir/emacs/site-start.d/erlang.el
%__install -m644 %SOURCE5 %buildroot%_docdir/%name-%version
%__cp EPLICENCE %buildroot%_docdir/%name-%version/LICENCE
%__cp AUTHORS %buildroot%_docdir/%name-%version/AUTHORS
%__mv tmp/otp_doc_html/{COPYRIGHT,PR.template,README} %buildroot%_docdir/%name-%version
%__mv tmp/otp_doc_html/* %buildroot%_docdir/%name-%version/manual
%__mv tmp/otp_doc_man/man/* %buildroot%_mandir
pushd .
cd %buildroot%_man3dir
for i in lib.3* crypto.3* inet.3* ssl.3* queue.3* random.3* rpc.3* string.3* ; do
%__mv -f $i erl_$i
done
cd %buildroot%_man6dir
for i in crypto.6* ssl.6* snmp.6* ; do
%__mv -f $i erl_$i
done
cd %buildroot%_emacslispdir
for i in *.el ; do
emacs -batch --eval "(progn
(setq load-path (append (list \".\") load-path))
(byte-compile-file \"$i\"))"
done
popd
%__rm %buildroot%_bindir/*
%__ln_s %_libdir/%name/bin/erl %buildroot%_bindir/erl
%__ln_s %_libdir/%name/bin/erlc %buildroot%_bindir/erlc
%__rm %buildroot%_libdir/%name/bin/epmd
%__rm %buildroot%_libdir/%name/bin/erlc
%__rm %buildroot%_libdir/%name/bin/erl
%__rm %buildroot%_libdir/%name/bin/run_erl
%__rm %buildroot%_libdir/%name/bin/start
%__rm %buildroot%_libdir/%name/bin/to_erl
%__rm %buildroot%_libdir/%name/erts-*/bin/*.src
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/epmd) \
%buildroot%_libdir/%name/bin/epmd) %buildroot%_libdir/%name/bin/epmd
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/erl) \
%buildroot%_libdir/%name/bin/erl) %buildroot%_libdir/%name/bin/erl
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/erlc) \
%buildroot%_libdir/%name/bin/erlc) %buildroot%_libdir/%name/bin/erlc
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/run_erl) \
%buildroot%_libdir/%name/bin/run_erl) %buildroot%_libdir/%name/bin/run_erl
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/start) \
%buildroot%_libdir/%name/bin/start) %buildroot%_libdir/%name/bin/start
%__ln_s $(relative $(realpath %buildroot%_libdir/%name/erts-*/bin/to_erl) \
%buildroot%_libdir/%name/bin/to_erl) %buildroot%_libdir/%name/bin/to_erl
%__rm %buildroot%_libdir/%name/Install
%__rm -r %buildroot%_libdir/%name/misc
%__rm -r %buildroot%_libdir/%name/usr/lib
%__rm -r %buildroot%_libdir/%name/erts-*/{doc,man}
%__subst 's|ROOTDIR=.*|ROOTDIR=%_libdir/%name|' %buildroot%_libdir/%name/erts-*/bin/erl
%__subst 's|ROOTDIR=.*|ROOTDIR=%_libdir/%name|' %buildroot%_libdir/%name/erts-*/bin/start
%files
%dir %_docdir/%name-%version
%_bindir/*
%_libdir/%name
%_docdir/%name-%version/*
%exclude %_docdir/%name-%version/manual
%exclude %_libdir/%name/lib/appmon-*
%exclude %_libdir/%name/lib/debugger-*
%exclude %_libdir/%name/lib/et-*
%exclude %_libdir/%name/lib/gs-*
%exclude %_libdir/%name/lib/pman-*
%exclude %_libdir/%name/lib/toolbar-*
%exclude %_libdir/%name/lib/tv-*
%exclude %_libdir/%name/lib/odbc-*
%files visual
%_libdir/%name/lib/appmon-*
%_libdir/%name/lib/debugger-*
%_libdir/%name/lib/et-*
%_libdir/%name/lib/gs-*
%_libdir/%name/lib/pman-*
%_libdir/%name/lib/toolbar-*
%_libdir/%name/lib/tv-*
%files -n emacs-mode-erlang
%_emacslispdir/*
%_sysconfdir/emacs/site-start.d/*
%files manual
%_docdir/%name-%version/manual
%files manpages
%_man1dir/*
%_man3dir/*
%_man4dir/*
%_man6dir/*
%files odbc
%_libdir/%name/lib/odbc-*
%changelog
…
Полный changelog можно просмотреть здесь