diff options
author | gjb <gjb@FreeBSD.org> | 2016-02-24 03:05:05 +0000 |
---|---|---|
committer | gjb <gjb@FreeBSD.org> | 2016-02-24 03:05:05 +0000 |
commit | 9be9d7b0c99468cd184d9584e7d3ade2bf57c389 (patch) | |
tree | 95f74c132d855750f6640e28872d81c83a5aaf6f | |
parent | aa9140456c8d1c68e238f8d94326c7771cf7ac5a (diff) | |
download | FreeBSD-src-9be9d7b0c99468cd184d9584e7d3ade2bf57c389.zip FreeBSD-src-9be9d7b0c99468cd184d9584e7d3ade2bf57c389.tar.gz |
Include a 'package-pkg' target, intended for use for
architectures we do not provide upstream pkg(8) packages.
This is not tied to anything as-is, and likely will break
your system if used (based on experience with testing with
powerpc).
There is an overwhelming amount of evil happening here,
so until the issues are fixed, it will not be tied into the
'packages' target.
Sponsored by: The FreeBSD Foundation
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | Makefile.inc1 | 6 | ||||
-rwxr-xr-x | release/scripts/make-pkg-package.sh | 25 |
3 files changed, 32 insertions, 1 deletions
@@ -128,7 +128,7 @@ TGTS= all all-man buildenv buildenvvars buildkernel buildworld \ build32 builddtb distribute32 install32 xdev xdev-build xdev-install \ xdev-links native-xtools stageworld stagekernel stage-packages \ create-world-packages create-kernel-packages create-packages \ - packages installconfig real-packages sign-packages + packages installconfig real-packages sign-packages package-pkg TGTS+= ${SUBDIR_TARGETS} diff --git a/Makefile.inc1 b/Makefile.inc1 index a3e1cc1..4ccdc70 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1378,6 +1378,12 @@ _pkgbootstrap: packages: ${MAKE} -C ${.CURDIR} PKG_VERSION=${PKG_VERSION} real-packages +package-pkg: + rm -rf /tmp/ports.${TARGET} || : + env ${WMAKEENV:Q} SRCDIR=${.CURDIR} PORTSDIR=${PORTSDIR} REVISION=${REVISION} \ + PKG_VERSION=${PKG_VERSION} REPODIR=${REPODIR} WSTAGEDIR=${WSTAGEDIR} \ + sh ${.CURDIR}/release/scripts/make-pkg-package.sh + real-packages: stage-packages create-packages sign-packages stage-packages: diff --git a/release/scripts/make-pkg-package.sh b/release/scripts/make-pkg-package.sh new file mode 100755 index 0000000..ab9418b --- /dev/null +++ b/release/scripts/make-pkg-package.sh @@ -0,0 +1,25 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# Simulate the build environment. +eval $(make -C ${SRCDIR} TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} buildenvvars) +export WRKDIRPREFIX=/tmp/ports.${TARGET} +export WSTAGEDIR=${WSTAGEDIR} +export REPODIR=${REPODIR} +export PKG_VERSION=${PKG_VERSION} +export WRKDIR=$(make -C ${PORTSDIR}/ports-mgmt/pkg -V WRKDIR) + +make -C ${PORTSDIR}/ports-mgmt/pkg TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ + CONFIGURE_ARGS="--host=$(uname -m)-portbld-freebsd${REVISION}" \ + stage create-manifest + +pkg -o ABI_FILE=${WSTAGEDIR}/bin/sh \ + create -v -m ${WRKDIR}/.metadir/ \ + -r ${WRKDIR}/stage \ + -p ${WRKDIR}/.PLIST.mktmp \ + -o ${REPODIR}/$(pkg -o ABI_FILE=${WSTAGEDIR}/bin/sh config ABI)/${PKG_VERSION} +mkdir -p ${REPODIR}/$(pkg -o ABI_FILE=${WSTAGEDIR}/bin/sh config ABI)/${PKG_VERSION}/Latest/ +cd ${REPODIR}/$(pkg -o ABI_FILE=${WSTAGEDIR}/bin/sh config ABI)/${PKG_VERSION}/Latest/ && \ + ln -s ../pkg-*.txz |