On Wed, Jan 22, 2014 at 04:59:53PM +0000, John Baldwin wrote:
> Author: jhb
> Date: Wed Jan 22 16:59:53 2014
> New Revision: 261031
> URL: http://svnweb.freebsd.org/changeset/base/261031
> 
> Log:
>   Generate /var/db/services.db during 'make distribution' so that it is
>   present during new installs.  Update etcupdate and mergemaster to
>   ignore the generated file.
>   
>   Tested by:  gjb (release build)
>   MFC after:  1 month
> 
> Modified:
>   head/Makefile.inc1
>   head/etc/Makefile
>   head/usr.sbin/etcupdate/etcupdate.sh
>   head/usr.sbin/mergemaster/mergemaster.sh
> 
> Modified: head/Makefile.inc1
> ==============================================================================
> --- head/Makefile.inc1        Wed Jan 22 16:50:18 2014        (r261030)
> +++ head/Makefile.inc1        Wed Jan 22 16:59:53 2014        (r261031)
> @@ -771,7 +771,7 @@ _nmtree_itools=   nmtree
>  ITOOLS=      [ awk cap_mkdb cat chflags chmod chown \
>       date echo egrep find grep id install ${_install-info} \
>       ln lockf make mkdir mtree ${_nmtree_itools} mv pwd_mkdb \
> -     rm sed sh sysctl test true uname wc ${_zoneinfo}
> +     rm sed services_mkdb sh sysctl test true uname wc ${_zoneinfo}
>  
>  #
>  # distributeworld
> 
> Modified: head/etc/Makefile
> ==============================================================================
> --- head/etc/Makefile Wed Jan 22 16:50:18 2014        (r261030)
> +++ head/etc/Makefile Wed Jan 22 16:59:53 2014        (r261031)
> @@ -198,6 +198,8 @@ distribution:
>           ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
>               ${BIN1} ${DESTDIR}/etc; \
>           cap_mkdb ${CAP_MKDB_ENDIAN} ${DESTDIR}/etc/login.conf; \
> +         services_mkdb ${CAP_MKDB_ENDIAN} -o ${DESTDIR}/var/db/services.db \
> +             ${DESTDIR}/etc/services; \

Something is not right here. Building in a jail with make distribution
fails:

cd /zpoudriere/jails/head/usr/src/etc;  install -o root -g wheel -m 644  
crontab  devd.conf  devfs.conf  ddb.conf  dhclient.conf  disktab  fbtab  
ftpusers  gettytab  group  hosts  hosts.allow  hosts.equiv  inetd.conf  
libalias.conf  libmap.conf  login.access  login.conf  mac.conf  motd  netconfig 
 network.subr  networks  newsyslog.conf  nsswitch.conf  phones  profile  
protocols  rc  rc.bsdextended  rc.firewall  rc.initdiskless  rc.sendmail  
rc.shutdown  rc.subr  remote  rpc  services  shells  sysctl.conf  syslog.conf  
termcap.small libmap32.conf etc.amd64/ttys amd.map apmd.conf snmpd.config 
freebsd-update.conf 
/zpoudriere/jails/head/usr/src/etc/../usr.bin/locate/locate/locate.rc hosts.lpd 
printcap /zpoudriere/jails/head/usr/src/etc/../usr.bin/mail/misc/mail.rc 
ntp.conf nscd.conf portsnap.conf pf.os csh.cshrc csh.login csh.logout 
regdomain.xml /zpoudriere/jails/head/etc;  cap_mkdb -l 
/zpoudriere/jails/head/etc/login.conf;  services_mkdb -l -q -o 
/zpoudriere/jails/head/var/db/services.db  /zpoudriere/jails/head/etc/services; 
 install -o root -g wheel -m 755  netstart pccard_ether rc.suspend rc.resume 
/zpoudriere/jails/head/etc;  install -o root -g wheel -m 600  master.passwd 
nsmb.conf opieaccess /zpoudriere/jails/head/etc;
services_mkdb: illegal option -- l
Usage:  services_mkdb [-q] [-o <db>] [<servicefile>]
        services_mkdb -u [<servicefile>]
*** Error code 1

Stop.
make[2]: stopped in /zpoudriere/jails/head/usr/src/etc
*** Error code 1



>           ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 755 \
>               ${BIN2} ${DESTDIR}/etc; \
>           ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 \
> 
> Modified: head/usr.sbin/etcupdate/etcupdate.sh
> ==============================================================================
> --- head/usr.sbin/etcupdate/etcupdate.sh      Wed Jan 22 16:50:18 2014        
> (r261030)
> +++ head/usr.sbin/etcupdate/etcupdate.sh      Wed Jan 22 16:59:53 2014        
> (r261031)
> @@ -213,7 +213,8 @@ build_tree()
>  
>       # Purge auto-generated files.  Only the source files need to
>       # be updated after which these files are regenerated.
> -     rm -f $1/etc/*.db $1/etc/passwd >&3 2>&1 || return 1
> +     rm -f $1/etc/*.db $1/etc/passwd $1/var/db/services.db >&3 2>&1 || \
> +         return 1
>  
>       # Remove empty files.  These just clutter the output of 'diff'.
>       find $1 -type f -size 0 -delete >&3 2>&1 || return 1
> 
> Modified: head/usr.sbin/mergemaster/mergemaster.sh
> ==============================================================================
> --- head/usr.sbin/mergemaster/mergemaster.sh  Wed Jan 22 16:50:18 2014        
> (r261030)
> +++ head/usr.sbin/mergemaster/mergemaster.sh  Wed Jan 22 16:59:53 2014        
> (r261031)
> @@ -699,7 +699,8 @@ case "${RERUN}" in
>    # or spwd.db.  Instead, we want to compare the text versions, and run 
> *_mkdb.
>    # Prompt the user to do so below, as needed.
>    #
> -  rm -f ${TEMPROOT}/etc/*.db ${TEMPROOT}/etc/passwd
> +  rm -f ${TEMPROOT}/etc/*.db ${TEMPROOT}/etc/passwd \
> +      ${TEMPROOT}/var/db/services.db
>  
>    # We only need to compare things like freebsd.cf once
>    find ${TEMPROOT}/usr/obj -type f -delete 2>/dev/null
> _______________________________________________
> svn-src-...@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/svn-src-all
> To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Attachment: pgpHOKX0SzRDN.pgp
Description: PGP signature

Reply via email to