Author: alucard Date: Fri Apr 29 12:09:28 2011 GMT Module: packages Tag: HEAD ---- Log message: - up to 1.8.3 - tests works, fixed upsteam (TODO) - fixed template paths (TODO) - split for xorpsh left (TODO) - I don't see reason for this - release 1
---- Files affected: packages/xorp: xorp.spec (1.9 -> 1.10) , xorp-default_paths.patch (NONE -> 1.1) (NEW), xorp.init (NONE -> 1.1) (NEW), xorp-configure.patch (1.1 -> NONE) (REMOVED), xorp-curses.patch (1.1 -> NONE) (REMOVED), xorp-tests.patch (1.1 -> NONE) (REMOVED) ---- Diffs: ================================================================ Index: packages/xorp/xorp.spec diff -u packages/xorp/xorp.spec:1.9 packages/xorp/xorp.spec:1.10 --- packages/xorp/xorp.spec:1.9 Fri Mar 30 13:28:31 2007 +++ packages/xorp/xorp.spec Fri Apr 29 14:09:23 2011 @@ -1,25 +1,21 @@ # $Revision$, $Date$ # TODO: -# - fix putting config templates in datadir (should be /etc/xorp/templates) # - separate packages: xorpsh, maybe some more -# - if someone know how to run bgp tests without root priviledges -# (probably other too) # # Conditional build: -%bcond_with tests # build without performing tests +%bcond_without tests # build without performing tests # Summary: eXtensible Open Router Platform Summary(pl.UTF-8): eXtensible Open Router Platform - rozszerzalna otwarta platforma dla routera Name: xorp -Version: 1.4 -Release: 0.1 +Version: 1.8.3 +Release: 1 License: BSD-like Group: Networking/Admin -Source0: http://www.xorp.org/releases/%{version}/%{name}-%{version}.tar.gz -# Source0-md5: 2eeacffc96d9551fdbf6786fcd033e76 -Patch0: %{name}-curses.patch -Patch1: %{name}-tests.patch -Patch2: %{name}-configure.patch +Source0: https://github.com/downloads/greearb/xorp.ct/%{name}-%{version}-src.tar.gz +# Source0-md5: 5879bcf398a7040e893bfb0b33329511 +Source1: %{name}.init +Patch0: %{name}-default_paths.patch URL: http://www.xorp.org/ BuildRequires: autoconf BuildRequires: automake @@ -29,6 +25,8 @@ BuildRequires: ncurses-devel BuildRequires: net-snmp-devel %{?with_test:BuildRequires: python} +Requires(post,preun): /sbin/chkconfig +Requires: traceroute BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -57,29 +55,41 @@ programowych. Przykładem może być modularny router Click. %prep -%setup -q -n %{name}-%{version} +%setup -q -n %{name} %patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%build -%{__libtoolize} -%{__aclocal} -%{__autoconf} -%{__automake} -%configure +# in addition to patch0 +%{__sed} -i "s#/lib/xorp#/%{_lib}/xorp#g" rtrmgr/util.cc -%{__make} +%build +%{__scons} DESTDIR=$RPM_BUILD_ROOT \ + prefix=/usr \ + libexecdir=%{_libdir} \ + libdir=%{_libdir} \ + sbindir=%{_sbindir} \ + sysconfdir=%{_sysconfdir} \ + localstatedir=%{_localstatedir} \ %if %{with tests} -%{__make} check +%{__scons} check %endif %install rm -rf $RPM_BUILD_ROOT -%{__make} install \ - DESTDIR=$RPM_BUILD_ROOT datadir=%{_datadir}/xorp bindir=%{_bindir} sbindir=%{_sbindir} sysconfdir=/etc/xorp docdir=%{_docdir}/xorp-1.4 +install -d $RPM_BUILD_ROOT/etc/{xorp,rc.d/init.d,logrotate.d,sysconfig} +install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} +install -p package_files/xorp.conf $RPM_BUILD_ROOT/etc/xorp/ +install -p package_files/xorp.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/xorp +install -p package_files/xorp.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/%{name} + +%{__scons} install DESTDIR=$RPM_BUILD_ROOT \ + prefix=/usr \ + libexecdir=%{_libdir} \ + libdir=%{_libdir} \ + sbindir=%{_sbindir} \ + sysconfdir=%{_sysconfdir} \ + localstatedir=%{_localstatedir} \ %clean rm -rf $RPM_BUILD_ROOT @@ -87,55 +97,46 @@ %post umask 022 if [ ! -f %{_sysconfdir}/shells ]; then - echo "/usr/bin/xorpsh" > %{_sysconfdir}/shells + echo "/usr/sbin/xorpsh" > %{_sysconfdir}/shells else - if ! grep -q '^/usr/bin/xorpsh$' %{_sysconfdir}/shells; then - echo "/usr/bin/xorpsh" >> %{_sysconfdir}/shells + if ! grep -q '^/usr/sbin/xorpsh$' %{_sysconfdir}/shells; then + echo "/usr/sbin/xorpsh" >> %{_sysconfdir}/shells fi fi +/sbin/chkconfig --add %{name} +if [ -f /var/lock/subsys/%{name} ]; then + echo "Run \"/sbin/service %{name} restart\" to restart XORP." >&2 +else + echo "Run \"/sbin/service %{name} start\" to start XORP." >&2 +fi %preun umask 022 if [ "$1" = "0" ]; then - grep -v /usr/bin/xorpsh /etc/shells > /etc/shells.new + grep -v /usr/sbin/xorpsh /etc/shells > /etc/shells.new mv -f /etc/shells.new /etc/shells + %service %{name} stop + /sbin/chkconfig --del %{name} fi %files %defattr(644,root,root,755) -%doc ERRATA README RELEASE_NOTES -#%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rssh.conf -%attr(755,root,root) %{_bindir}/print_lsas -%attr(755,root,root) %{_bindir}/print_neighbours -%attr(755,root,root) %{_bindir}/send_cli_processor_xrl -%attr(755,root,root) %{_bindir}/show_interfaces -%attr(755,root,root) %{_bindir}/show_peer_stats -%attr(755,root,root) %{_bindir}/show_routes -%attr(755,root,root) %{_bindir}/show_stats -%attr(755,root,root) %{_bindir}/xorp_profiler -%attr(755,root,root) %{_bindir}/xorp_rtrmgr -%attr(755,root,root) %{_bindir}/xorp_bgp -%attr(755,root,root) %{_bindir}/xorp_fea -%attr(755,root,root) %{_bindir}/xorp_fea_click_config_generator -%attr(755,root,root) %{_bindir}/xorp_fea_dummy -%attr(755,root,root) %{_bindir}/xorp_fib2mrib -%attr(755,root,root) %{_bindir}/xorp_finder -%attr(755,root,root) %{_bindir}/xorp_igmp -%attr(755,root,root) %{_bindir}/xorp_mld -%attr(755,root,root) %{_bindir}/xorp_ospfv2 -%attr(755,root,root) %{_bindir}/xorp_ospfv3 -%attr(755,root,root) %{_bindir}/xorp_pimsm4 -%attr(755,root,root) %{_bindir}/xorp_pimsm6 -%attr(755,root,root) %{_bindir}/xorp_policy -%attr(755,root,root) %{_bindir}/xorp_rib -%attr(755,root,root) %{_bindir}/xorp_rip -%attr(755,root,root) %{_bindir}/xorp_ripng -%attr(755,root,root) %{_bindir}/xorp_static_routes -%attr(755,root,root) %{_bindir}/xorpsh -%attr(755,root,root) %{_bindir}/xorpsh_print_peers -%attr(755,root,root) %{_bindir}/xorpsh_print_routes +%doc ERRATA RELEASE_NOTES +%attr(755,root,root) /etc/rc.d/init.d/%{name} +%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name} +%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name} +%dir %{_sysconfdir}/%{name} +%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf +%{_sysconfdir}/%{name}/templates +%attr(755,root,root) %{_sbindir}/bgp_xrl_shell_funcs.sh %attr(755,root,root) %{_sbindir}/call_xrl -%{_datadir}/xorp +%attr(755,root,root) %{_sbindir}/fea_xrl_shell_funcs.sh +%attr(755,root,root) %{_sbindir}/rib_xrl_shell_funcs.sh +%attr(755,root,root) %{_sbindir}/xorp_profiler +%attr(755,root,root) %{_sbindir}/xorp_rtrmgr +%attr(755,root,root) %{_sbindir}/xorpsh +%attr(755,root,root) %{_libdir}/%{name} +#%{_datadir}/xorp %define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`) %changelog @@ -143,6 +144,13 @@ All persons listed below can be reached at <cvs_login>@pld-linux.org $Log$ +Revision 1.10 2011/04/29 12:09:23 alucard +- up to 1.8.3 +- tests works, fixed upsteam (TODO) +- fixed template paths (TODO) +- split for xorpsh left (TODO) - I don't see reason for this +- release 1 + Revision 1.9 2007/03/30 11:28:31 alucard - double BR... ================================================================ Index: packages/xorp/xorp-default_paths.patch diff -u /dev/null packages/xorp/xorp-default_paths.patch:1.1 --- /dev/null Fri Apr 29 14:09:28 2011 +++ packages/xorp/xorp-default_paths.patch Fri Apr 29 14:09:23 2011 @@ -0,0 +1,45 @@ +--- xorp/SConstruct.orig 2011-04-28 14:50:29.133202249 +0000 ++++ xorp/SConstruct 2011-04-28 14:51:14.113203367 +0000 +@@ -371,11 +371,11 @@ env['mandir'] = ARGUMENTS.get('mandir', + # of 3rd party packagers and distributors. + # + env['xorp_rootdir'] = env['exec_prefix'] # used to determine RPATH +-env['xorp_confdir'] = env['sysconfdir'] # path to xorp.conf ++env['xorp_confdir'] = env['sysconfdir'] + '/xorp' # path to xorp.conf + env['xorp_libdir'] = env['libdir'] + '/xorp/lib' + env['xorp_moduledir'] = env['libdir'] + '/xorp/sbin' # Protocol modules + env['xorp_sbindir'] = env['sbindir'] # End-user binaries +-env['xorp_templatedir'] = env['datadir'] + '/templates' ++env['xorp_templatedir'] = env['xorp_confdir'] + '/templates' + env['xorp_tooldir'] = env['libdir'] + '/xorp/bin' # tools/* + env['xorp_xrlsdir'] = env['datadir'] + '/xorp/xrls' # *.xrls + env['xorp_sourcedir'] = sourcedir # rtrmgr/util.cc and xif need this +--- xorp/rtrmgr/util.cc.orig 2011-04-28 14:52:07.343202413 +0000 ++++ xorp/rtrmgr/util.cc 2011-04-28 14:54:30.839868926 +0000 +@@ -130,7 +130,7 @@ xorp_path_init(const char* argv0) + if (xr != NULL) { + s_bin_root = xr; + s_cfg_root = xr; +- s_config_file = s_cfg_root + "/etc/xorp.conf"; ++ s_config_file = "/etc/xorp/xorp.conf"; + return; + } + +@@ -158,7 +158,7 @@ xorp_path_init(const char* argv0) + string install_root = xorp_real_path(XORP_INSTALL_ROOT); + s_bin_root = install_root; + s_cfg_root = install_root; +- s_config_file = s_cfg_root + "/etc/xorp.conf"; ++ s_config_file = "/etc/xorp/xorp.conf"; + + debug_msg("s_bin_root: %s\n", s_bin_root.c_str()); + debug_msg("s_cfg_root: %s\n", s_cfg_root.c_str()); +@@ -192,7 +192,7 @@ xorp_command_dir() + string + xorp_template_dir() + { +- return s_cfg_root + string("/share/xorp/templates"); ++ return string("/etc/xorp/templates"); + } + + string ================================================================ Index: packages/xorp/xorp.init diff -u /dev/null packages/xorp/xorp.init:1.1 --- /dev/null Fri Apr 29 14:09:28 2011 +++ packages/xorp/xorp.init Fri Apr 29 14:09:23 2011 @@ -0,0 +1,110 @@ +#!/bin/sh +# +# xorp Start/Stop the XORP routing daemon. +# +# chkconfig: 345 12 88 +# description: XORP is the eXtensible Open Router Platform +# +# processname: xorp_rtrmgr +# config: /etc/xorp/xorp.conf +# pidfile: /var/run/xorp.pid + + +# Source function library. +. /etc/rc.d/init.d/functions + +BOOT_CONF="/etc/xorp/xorp.conf" +LOGFILE="/var/log/xorp.log" +OPTIONS="" +WAIT_TO_STOP=100 + +# Get service config +[ -f /etc/sysconfig/xorp ] && . /etc/sysconfig/xorp + +start() { + # Check if the service is already running? + if [ -f /var/lock/subsys/xorp ]; then + msg_already_running "XORP" + return + fi + + msg_starting "XORP" + daemon xorp_rtrmgr -d -P /var/run/xorp.pid -b $BOOT_CONF -l $LOGFILE $OPTIONS + RETVAL=$? + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/xorp +} + +stop() { + if [ ! -f /var/lock/subsys/xorp ]; then + msg_not_running "XORP" + return + fi + + msg_stopping "XORP" + busy + pid=$(pidofproc xorp_rtrmgr /var/run/xorp.pid) + if [ -n $pid ]; then + kill -TERM $pid + while [ "$i" -lt "$WAIT_TO_STOP" ]; do + i=$((i + 1)) + checkpid $pid && sleep 1 || break + done + ok + rm -f /var/lock/subsys/xorp + else + died + fi +} + +reload() { + if [ ! -f /var/lock/subsys/xorp ]; then + msg_not_running "xorp" + RETVAL=7 + return + fi + + msg_reloading "xorp" + killproc xorp_rtrmgr -HUP + RETVAL=$? +} + +condrestart() { + if [ ! -f /var/lock/subsys/xorp ]; then + msg_not_running "xorp" + RETVAL=$1 + return + fi + + stop + start +} + +RETVAL=0 +# See how we were called. +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + start + ;; + try-restart) + condrestart 0 + ;; + reload|force-reload) + reload + ;; + status) + status --pidfile /var/run/xorp.pid XORP + exit $? + ;; + *) + msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|flush-logs|status}" + exit 3 +esac + +exit $RETVAL ================================================================ ---- CVS-web: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/xorp/xorp.spec?r1=1.9&r2=1.10&f=u _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
