Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F133298605
D21468.id61480.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
5 KB
Referenced Files
None
Subscribers
None
D21468.id61480.diff
View Options
Index: Mk/Scripts/create-manifest.sh
===================================================================
--- Mk/Scripts/create-manifest.sh
+++ Mk/Scripts/create-manifest.sh
@@ -104,6 +104,7 @@
output=${dp_METADIR}/+${prepost:+${prepost}_}${stage}
for input in ${files}; do
[ -f "${input}" ] && cat ${input} >> ${output}
+ [ -f "${input}.lua" ] && cp ${input}.lua ${dp_METADIR}
done
done
done
Index: Mk/Scripts/depends-list.sh
===================================================================
--- Mk/Scripts/depends-list.sh
+++ Mk/Scripts/depends-list.sh
@@ -37,7 +37,7 @@
done
shift $((OPTIND-1))
-validate_env PORTSDIR dp_PKGNAME
+validate_env PORTSDIR dp_OVERLAYS dp_PKGNAME
if [ ${recursive} -eq 1 -o ${requires_wrkdir} -eq 1 ]; then
validate_env dp_MAKE
# Cache command executions to avoid looking them up again in every
@@ -65,16 +65,25 @@
case "${2}" in
/*) d=${2} ;;
- *) d=${PORTSDIR}/${2} ;;
+ *) for overlay in ${dp_OVERLAYS} ${PORTSDIR}; do
+ d=${overlay}/${2}
+ f=
+ case "${d}" in
+ *@*/*) ;; # Ignore @ in the path which would not be a flavor
+ *@*)
+ f=${d##*@}
+ d=${d%@*}
+ ;;
+ esac
+ if [ -f ${d}/Makefile ]; then
+ if [ -n $f ]; then
+ export FLAVOR=$f
+ fi
+ break
+ fi
+ done
esac
- case "${d}" in
- *@*/*) ;; # Ignore @ in the path which would not be a flavor
- *@*)
- export FLAVOR=${d##*@}
- d=${d%@*}
- ;;
- esac
if [ ${flavors} -eq 1 -a -n "${FLAVOR:-}" ]; then
port_display="${d}@${FLAVOR}"
else
Index: Mk/Scripts/do-depends.sh
===================================================================
--- Mk/Scripts/do-depends.sh
+++ Mk/Scripts/do-depends.sh
@@ -11,7 +11,7 @@
dp_DEPENDS_CLEAN dp_DEPENDS_ARGS dp_USE_PACKAGE_DEPENDS \
dp_USE_PACKAGE_DEPENDS_ONLY dp_PKG_ADD dp_PKG_INFO dp_WRKDIR \
dp_PKGNAME dp_STRICT_DEPENDS dp_LOCALBASE dp_LIB_DIRS dp_SH \
- dp_SCRIPTSDIR PORTSDIR dp_MAKE dp_MAKEFLAGS
+ dp_SCRIPTSDIR PORTSDIR dp_MAKE dp_MAKEFLAGS dp_OVERLAYS
[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DO_DEPENDS}" ] && set -x
@@ -125,7 +125,15 @@
case "${origin}" in
/*) ;;
- *) origin="${PORTSDIR}/${origin}" ;;
+ *)
+ for overlay in ${dp_OVERLAYS} ${PORTSDIR}; do
+ orig="${overlay}/${origin}"
+ if [ -f "${orig}/Makefile" ]; then
+ break
+ fi
+ done
+ origin="${orig}"
+ ;;
esac
case "${origin}" in
*@*/*) ;; # Ignore @ in the path which would not be a flavor
Index: Mk/bsd.port.mk
===================================================================
--- Mk/bsd.port.mk
+++ Mk/bsd.port.mk
@@ -1029,6 +1029,7 @@
NOTPHONY?=
FLAVORS?=
FLAVOR?=
+OVERLAYS?=
# Disallow forced FLAVOR as make argument since we cannot change it to the
# proper default.
.if empty(FLAVOR) && !empty(.MAKEOVERRIDES:MFLAVOR)
@@ -1450,8 +1451,18 @@
.endif
.endfor
.for f in ${USES}
-.include "${USESDIR}/${f:C/\:.*//}.mk"
+.undef _usefound
+.for udir in ${OVERLAYS:C,$,/Mk/Uses,} ${USESDIR}
+_usefile= ${udir}/${f:C/\:.*//}.mk
+.if exists(${_usefile}) && !defined(_usefound)
+_usefound=
+.include "${_usefile}"
+.endif
.endfor
+.if !defined(_usefound)
+ERROR+= "Unkonwn USES=${f:C/\:.*//}"
+.endif
+.endfor
.if !empty(FLAVORS)
. if ${FLAVORS:Mall}
@@ -1962,8 +1973,18 @@
.endif
.endfor
.for f in ${_USES_POST}
-.include "${USESDIR}/${f:C/\:.*//}.mk"
+.undef _usefound
+.for udir in ${OVERLAYS:C,$,/Mk/Uses,} ${USESDIR}
+_usefile= ${udir}/${f:C/\:.*//}.mk
+.if exists(${_usefile}) && !defined(_usefound)
+_usefound=
+.include "${_usefile}"
+.endif
.endfor
+.if !defined(_usefound)
+ERROR+= "Unkonwn USES=${f:C/\:.*//}"
+.endif
+.endfor
.if defined(PORTNAME)
.include "${PORTSDIR}/Mk/bsd.sanity.mk"
@@ -3212,8 +3233,7 @@
.endif
# Build
-# XXX: ${MAKE_ARGS:N${DESTDIRNAME}=*} would be easier but it is not valid with the old fmake
-DO_MAKE_BUILD?= ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} ${MAKE_ARGS:C,^${DESTDIRNAME}=.*,,g}
+DO_MAKE_BUILD?= ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${_MAKE_JOBS} ${MAKE_ARGS:N${DESTDIRNAME}=*}
.if !target(do-build)
do-build:
@(cd ${BUILD_WRKSRC}; if ! ${DO_MAKE_BUILD} ${ALL_TARGET}; then \
@@ -3333,7 +3353,7 @@
# Test
.if !target(do-test) && defined(TEST_TARGET)
-DO_MAKE_TEST?= ${SETENV} ${TEST_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${TEST_ARGS:C,^${DESTDIRNAME}=.*,,g}
+DO_MAKE_TEST?= ${SETENV} ${TEST_ENV} ${MAKE_CMD} ${MAKE_FLAGS} ${MAKEFILE} ${TEST_ARGS:N${DESTDIRNAME}=*}
do-test:
@(cd ${TEST_WRKSRC}; if ! ${DO_MAKE_TEST} ${TEST_TARGET}; then \
if [ -n "${TEST_FAIL_MESSAGE}" ] ; then \
@@ -3965,6 +3985,7 @@
dp_SH="${SH}" \
dp_SCRIPTSDIR="${SCRIPTSDIR}" \
PORTSDIR="${PORTSDIR}" \
+ dp_OVERLAYS="${OVERLAYS}" \
dp_MAKE="${MAKE}" \
dp_MAKEFLAGS='${.MAKEFLAGS}' \
${SH} ${SCRIPTSDIR}/do-depends.sh
@@ -4019,6 +4040,7 @@
dp_PKGNAME="${PKGNAME}" \
dp_PKG_INFO="${PKG_INFO}" \
dp_SCRIPTSDIR="${SCRIPTSDIR}" \
+ dp_OVERLAYS="${OVERLAYS}" \
${SH} ${SCRIPTSDIR}/depends-list.sh \
${DEPENDS_SHOW_FLAVOR:D-f}
Index: Mk/bsd.sanity.mk
===================================================================
--- Mk/bsd.sanity.mk
+++ Mk/bsd.sanity.mk
@@ -58,7 +58,7 @@
# Warnings only when DEVELOPER=yes
-.if exists(${.CURDIR}/../../Mk/bsd.port.mk)
+.if exists(${.CURDIR}/../../Mk/bsd.port.mk) || ${OVERLAYS:tA:M${.CURDIR:H:H}} == ${.CURDIR:H:H}
.if ${.CURDIR:H:T} != ${PKGCATEGORY}
DEV_ERROR+= "The first entry in CATEGORIES should be the directory where the port lives"
.endif
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Oct 25, 6:13 PM (11 h, 55 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24183763
Default Alt Text
D21468.id61480.diff (5 KB)
Attached To
Mode
D21468: Overlay support for the ports tree
Attached
Detach File
Event Timeline
Log In to Comment