From owner-svn-src-projects@FreeBSD.ORG Thu Mar 5 00:13:45 2015 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 64A41524; Thu, 5 Mar 2015 00:13:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4485C9F9; Thu, 5 Mar 2015 00:13:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t250Dinr075925; Thu, 5 Mar 2015 00:13:44 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t250DhES075915; Thu, 5 Mar 2015 00:13:43 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201503050013.t250DhES075915@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Thu, 5 Mar 2015 00:13:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r279607 - in projects/release-pkg: . release/packages/development release/packages/docs release/packages/profile release/packages/runtime X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 05 Mar 2015 00:13:45 -0000 Author: bapt Date: Thu Mar 5 00:13:42 2015 New Revision: 279607 URL: https://svnweb.freebsd.org/changeset/base/279607 Log: Add new create-world-packages target to generated the packages out of world Dynamically figure out the list of targets based on tags passed on the mtrees First sanity check that all packages have existing manifests Generate the packages Please note that for now the mtree needs more work as it has duplicate entries, everything is not yet tagged The packages now have generic entries and needs to be customize Added: projects/release-pkg/release/packages/development/ projects/release-pkg/release/packages/development/+MANIFEST projects/release-pkg/release/packages/docs/ projects/release-pkg/release/packages/docs/+MANIFEST projects/release-pkg/release/packages/profile/ projects/release-pkg/release/packages/profile/+MANIFEST projects/release-pkg/release/packages/runtime/ projects/release-pkg/release/packages/runtime/+MANIFEST Modified: projects/release-pkg/Makefile projects/release-pkg/Makefile.inc1 Modified: projects/release-pkg/Makefile ============================================================================== --- projects/release-pkg/Makefile Wed Mar 4 23:53:45 2015 (r279606) +++ projects/release-pkg/Makefile Thu Mar 5 00:13:42 2015 (r279607) @@ -113,7 +113,7 @@ TGTS= all all-man buildenv buildenvvars _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend \ build32 builddtb distribute32 install32 xdev xdev-build xdev-install \ - xdev-links native-xtools kernel-pkgs stageworld \ + xdev-links native-xtools kernel-pkgs stageworld create-world-packages TGTS+= ${SUBDIR_TARGETS} Modified: projects/release-pkg/Makefile.inc1 ============================================================================== --- projects/release-pkg/Makefile.inc1 Wed Mar 4 23:53:45 2015 (r279606) +++ projects/release-pkg/Makefile.inc1 Thu Mar 5 00:13:42 2015 (r279607) @@ -1195,6 +1195,37 @@ packagekernel: .endfor .endif +create-world-packages: +.if !defined(NO_ROOT) + @echo "ERROR: create-world-package can only be done with -DNO_ROOT"; \ + false +.endif + @cd ${DESTDIR} ; \ + awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \ + ${DESTDIR}/METALOG + @for plist in ${DESTDIR}/*.plist; do \ + plist=$${plist##*/} ; \ + test -d ${SRCDIR}/release/packages/$${plist%.plist} || \ + ( echo "Unkown package FreeBSD-$${plist%.plist}" ; false ) ; \ + done + @for plist in ${DESTDIR}/*.plist; do \ + plist=$${plist##*/} ; \ + pkgname=$${plist%.plist} ; \ + rm -rf ${DESTDIR}/$${pkgname}-manifestdir ; \ + cp -r ${SRCDIR}/release/packages/$${pkgname} \ + ${DESTDIR}/$${pkgname}-manifestdir ; \ + sed -i '' -e "s/%VERSION%/${PKG_VERSION}/" \ + -e "s/%PKGNAME%/$${pkgname}/" \ + -e "s/%COMMENT%/Generic comment for $${pkgname}/" \ + -e "s/%DESC%/Generic description for $${pkgname}/" \ + ${DESTDIR}/$${pkgname}-manifestdir/+MANIFEST ; \ + awk -F\" '/name/ { printf("===> Creating %s-", $$2) } /version/ {print $$2 }' \ + ${DESTDIR}/$${pkgname}-manifestdir/+MANIFEST ; \ + pkg create -m ${DESTDIR}/$${pkgname}-manifestdir \ + -p ${DESTDIR}/$${pkgname}.plist \ + -r ${DESTDIR} -o ${DESTDIR} ; \ + done + kernel-pkgs: .if !defined(NO_ROOT) @echo "ERROR: kernel-pkgs can only be done with -DNO_ROOT"; \ Added: projects/release-pkg/release/packages/development/+MANIFEST ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/release/packages/development/+MANIFEST Thu Mar 5 00:13:42 2015 (r279607) @@ -0,0 +1,13 @@ +name = "FreeBSD-%PKGNAME%" +origin = "base" +version = "%VERSION%" +comment = "%COMMENT%" +categories = [ base ] +maintainer = "re@FreeBSD.org" +www = "http://www.FreeBSD.org" +prefix = "/" +licenselogic = "single" +licenses = [ BSD2CLAUSE ] +desc = <