فهرست منبع

pounce install routines to ignore chown/chgrp and leave this to rpm

Michael van Elst 23 سال پیش
والد
کامیت
84f8b788ba
1فایلهای تغییر یافته به همراه16 افزوده شده و 32 حذف شده
  1. 16 32
      sendmail/sendmail.spec

+ 16 - 32
sendmail/sendmail.spec

@@ -33,7 +33,7 @@ Distribution: OpenPKG [PLUS]
 Group:        Mail
 License:      BSD
 Version:      8.12.9
-Release:      20030409
+Release:      20030508
 
 #   package options
 %option       with_tls      no
@@ -87,6 +87,18 @@ Conflicts:    ssmtp, exim, postfix
       %{l_patch} -p1 <%{SOURCE sendmail-8.12.0-mysqlmap.patch}
     )
 %endif
+    #   make install process unprivileged
+    ( cd sendmail-%{version}
+      %{l_shtool} subst \
+          -e 's;ln -s *;$(LN) $(LNOPTS) $(DESTDIR);' \
+          -e 's;chown;true;g' \
+          -e 's;chgrp;true;g' \
+          Makefile */Makefile */Makefile.m4 */*/Makefile
+      %{l_shtool} subst \
+          -e 's;\$chown;true;g' \
+          -e 's;chgrp;true;g' \
+          devtools/bin/install.sh
+    )
 
     #   add own M4 stuff to Sendmail configuration set
     ( cd sendmail-%{version}
@@ -127,6 +139,7 @@ Conflicts:    ssmtp, exim, postfix
           echo "define(\`confUBINDIR', \`%{l_prefix}/bin')dnl"
           echo "define(\`confLNOPTS', \`-f')dnl"
           echo "define(\`confFORCE_RMAIL', \`yes')dnl"
+          echo "APPENDDEF(\`confMSP_QUEUE_DIR',\`%{l_prefix}/var/sendmail/clientmqeue')dnl"
           echo "APPENDDEF(\`confENVDEF', \`-D_PATH_SENDMAILCF=\\\"%{l_prefix}/etc/sendmail/sendmail.cf\\\"')dnl"
           echo "APPENDDEF(\`confENVDEF', \`-D_PATH_SENDMAILPID=\\\"%{l_prefix}/var/sendmail/sendmail.pid\\\"')dnl"
           echo "APPENDDEF(\`confENVDEF', \`-D_DIR_SENDMAILCF=\\\"%{l_prefix}/etc/sendmail/\\\"')dnl"
@@ -194,37 +207,9 @@ Conflicts:    ssmtp, exim, postfix
 
     #   install Sendmail
     ( cd sendmail-%{version}
-      myusr=`(id -un) 2>/dev/null ||\
-             (whoami) 2>/dev/null ||\
-             (who am i | cut "-d " -f1) 2>/dev/null ||\
-             echo $LOGNAME`
-      mygrp=`(cat /etc/passwd; ypcat passwd) 2>/dev/null |\
-             grep "^${myusr}:" | awk -F: '{ print $4; }' | head -1`
-      mygrp=`(cat /etc/group; ypcat group) 2>/dev/null |\
-             grep ":${mygrp}:" | awk -F: '{ print $1; }' | head -1`
-      %{l_shtool} subst \
-          -e "s;^\\(SBINOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(SBINGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(UBINOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(UBINGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(GBINOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(GBINGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(MANOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(MANGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(CFOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(CFGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(MBINOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(MBINGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(MSPQOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(MSPQGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(LIBOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(LIBGRP.*=\\).*;\\1 $mygrp;" \
-          -e "s;^\\(INCOWN.*=\\).*;\\1 $myusr;" \
-          -e "s;^\\(INCGRP.*=\\).*;\\1 $mygrp;" \
-          -e 's;ln -s *;$(LN) $(LNOPTS) $(DESTDIR);' \
-          Makefile */Makefile */*/Makefile
       %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT \
-          MSPQ=%{l_prefix}$MSPQ MAILDIR=%{l_prefix}
+         INSTALL=`pwd`/devtools/bin/install.sh \
+         MAILDIR=%{l_prefix}/etc/sendmail
       mv $RPM_BUILD_ROOT%{l_prefix}/bin/rmail \
          $RPM_BUILD_ROOT%{l_prefix}/sbin/rmail
 
@@ -309,7 +294,6 @@ Conflicts:    ssmtp, exim, postfix
 
     #   adjust installation tree
     rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/cat*
-    chmod -R u+w $RPM_BUILD_ROOT%{l_prefix}/
     strip $RPM_BUILD_ROOT%{l_prefix}/bin/*              2>/dev/null || true
     strip $RPM_BUILD_ROOT%{l_prefix}/sbin/*             2>/dev/null || true
     strip $RPM_BUILD_ROOT%{l_prefix}/libexec/sendmail/* 2>/dev/null || true