فهرست منبع

finally kick out from JUNK into EVAL.... Puhhh

Ralf S. Engelschall 23 سال پیش
والد
کامیت
e0345479b2
4فایلهای تغییر یافته به همراه60 افزوده شده و 38 حذف شده
  1. 5 6
      dsh/dsh.conf
  2. 55 30
      dsh/dsh.spec
  3. 0 1
      dsh/localhost
  4. 0 1
      dsh/machines.list

+ 5 - 6
dsh/dsh.conf

@@ -2,10 +2,9 @@
 ##  dsh.conf -- Dancer's Distributed Shell (dsh) default configuration
 ##
 
- verbose = 0
- showmachinenames = 1
- waitshell = 1
-
- remoteshell = @l_prefix@/bin/ssh
-#remoteshellopt = ""
+verbose          = 0
+showmachinenames = 1
+waitshell        = 1
+remoteshell      = @l_prefix@/bin/ssh
+remoteshellopt   = "-x"
 

+ 55 - 30
dsh/dsh.spec

@@ -23,78 +23,103 @@
 ##  SUCH DAMAGE.
 ##
 
+#   package versions
+%define       V_dsh       0.23.5
+%define       V_dshconfig 0.20.8
+
 #   package information
 Name:         dsh
 Summary:      Dancer's Distributed shell
 URL:          http://www.netfort.gr.jp/~dancer/software/dsh.html
 Vendor:       Junichi Uekawa
 Packager:     The OpenPKG Project
-Distribution: OpenPKG [JUNK]
+Distribution: OpenPKG [EVAL]
 Group:        Shell
 License:      GPL
-Version:      0.0.17
-Release:      20020810
+Version:      %{V_dsh}
+Release:      20030101
 
 #   list of sources
-Source0:      http://www.netfort.gr.jp/~dancer/software/downloads/dsh_%{version}.tar.gz
-Source1:      dsh.conf
-Source2:      machines.list
-Source3:      localhost
+Source0:      http://www.netfort.gr.jp/~dancer/software/downloads/dsh-%{V_dsh}.tar.gz
+Source1:      http://www.netfort.gr.jp/~dancer/software/downloads/libdshconfig-%{V_dshconfig}.tar.gz
+Source2:      dsh.conf
 
 #   build information
 Prefix:       %{l_prefix}
 BuildRoot:    %{l_buildroot}
-BuildPreReq:  OpenPKG, openpkg >= 20020221
-PreReq:       OpenPKG, openpkg >= 20020221, openssh
+BuildPreReq:  OpenPKG, openpkg >= 20021230
+PreReq:       OpenPKG, openpkg >= 20021230, openssh
 AutoReq:      no
 AutoReqProv:  no
-ExclusiveOS:  linux2.2
 
 %description
-    Dsh executes command remotely on several different machines at the same
-    time.
+    Dsh executes commands remotely via SSH on several different machines
+    at the same time.
 
     %options
 
 %prep
-    %setup -q -n dsh
+    %setup0 -q
+    %setup1 -q -T -D -a 1
 
 %build
-    %{l_shtool} subst \
-        -e 's;^\(#define DSH_CONF\).*$;\1 "%{l_prefix}/etc/dsh/dsh.conf";' \
-        -- dsh.h
+    #   build libdshconfig
+    ( cd libdshconfig-%{V_dshconfig}
+      CC="%{l_cc}" \
+      CFLAGS="%{l_cflags -O}" \
+      CPPFLAGS="%{l_cppflags}" \
+      LDFLAGS="%{l_ldflags}" \
+      ./configure \
+          --prefix=%{l_prefix} \
+          --disable-shared \
+          --disable-nls
+      %{l_shtool} subst -e 's;ssize_t;int;g' -- libdshconfig.c
+      %{l_make} %{l_mflags -O}
+      rm -f .libs/*.la*
+    )
+
+    #   build dsh
     %{l_shtool} subst \
         -e 's;/etc\(/dsh/dsh.conf\);%{l_prefix}/etc\1;' \
         -e 's;/etc\(/dsh/machines.list\);%{l_prefix}/etc\1;' \
         -e 's;/etc\(/dsh/group\);%{l_prefix}/etc\1;' \
-        -- dsh.1 parameter.c
-    %{l_shtool} subst \
-        -e 's;^	gcc ;	$(CC) $(CFLAGS) ;' \
-        -- Makefile
+        -- dsh.1
     CC="%{l_cc}" \
     CFLAGS="%{l_cflags -O}" \
+    CPPFLAGS="%{l_cppflags} -I`pwd`/libdshconfig-%{V_dshconfig}" \
+    LDFLAGS="%{l_ldflags} -L`pwd`/libdshconfig-%{V_dshconfig}/.libs" \
+    ./configure \
+        --prefix=%{l_prefix} \
+        --sysconfdir=%{l_prefix}/etc/dsh \
+        --disable-shared \
+        --disable-nls
     %{l_make} %{l_mflags -O}
 
 %install
     rm -rf $RPM_BUILD_ROOT
+
+    #   perform standard installation procedure
+    %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
+    strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
+
+    #   add reasonable default configuration
     %{l_shtool} mkdir -f -p -m 755 \
-        $RPM_BUILD_ROOT%{l_prefix}/bin \
-        $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/group \
-        $RPM_BUILD_ROOT%{l_prefix}/man/man1
-    %{l_shtool} install -c -m 755 dsh $RPM_BUILD_ROOT%{l_prefix}/bin/
-    %{l_shtool} install -c -m 644 dsh.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/
+        $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/group
     %{l_shtool} install -c -m 644 \
         -e 's;@l_prefix@;%{l_prefix};g' \
         %{SOURCE dsh.conf} $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/
+    echo "localhost" >conf
     %{l_shtool} install -c -m 644 \
-        %{SOURCE machines.list} $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/
+        conf $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/machines.list
     %{l_shtool} install -c -m 644 \
-        %{SOURCE localhost} $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/group/
-    strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
-    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} \
+        conf $RPM_BUILD_ROOT%{l_prefix}/etc/dsh/group/localhost
+
+    #   determine installation files
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
+        %{l_files_std} \
         '%config %{l_prefix}/etc/dsh/dsh.conf' \
         '%config %{l_prefix}/etc/dsh/machines.list' \
-        '%config %{l_prefix}/etc/dsh/group/localhost' \
+        '%config %{l_prefix}/etc/dsh/group/localhost'
 
 %files -f files
 

+ 0 - 1
dsh/localhost

@@ -1 +0,0 @@
-localhost

+ 0 - 1
dsh/machines.list

@@ -1 +0,0 @@
-localhost