Sat Apr 18 23:50:13 2009 UTC ()
Allow unprivileged builds of projects that do a 'make install' into a work
subdir during the build phase.  This fixes PR pkg/36326.


(rh)
diff -r1.12 -r1.13 pkgsrc/devel/gnustep-make/gnustep.mk

cvs diff -r1.12 -r1.13 pkgsrc/devel/gnustep-make/gnustep.mk (expand / switch to unified diff)

--- pkgsrc/devel/gnustep-make/gnustep.mk 2009/04/18 03:32:17 1.12
+++ pkgsrc/devel/gnustep-make/gnustep.mk 2009/04/18 23:50:13 1.13
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: gnustep.mk,v 1.12 2009/04/18 03:32:17 rh Exp $ 1# $NetBSD: gnustep.mk,v 1.13 2009/04/18 23:50:13 rh Exp $
2 2
3.if !defined(GNUSTEP_MK) 3.if !defined(GNUSTEP_MK)
4GNUSTEP_MK= #defined 4GNUSTEP_MK= #defined
5 5
6.include "../../mk/bsd.prefs.mk" 6.include "../../mk/bsd.prefs.mk"
7 7
8GNUSTEP_SUBDIR= share/GNUstep 8GNUSTEP_SUBDIR= share/GNUstep
9GNUSTEP_ROOT= ${PREFIX} 9GNUSTEP_ROOT= ${PREFIX}
10GNUSTEP_LIB_DIR= ${GNUSTEP_ROOT}/lib/GNUstep 10GNUSTEP_LIB_DIR= ${GNUSTEP_ROOT}/lib/GNUstep
11GNUSTEP_SYSTEM_ROOT= ${GNUSTEP_ROOT}/System 11GNUSTEP_SYSTEM_ROOT= ${GNUSTEP_ROOT}/System
12GNUSTEP_LOCAL_ROOT= ${GNUSTEP_ROOT}/Local 12GNUSTEP_LOCAL_ROOT= ${GNUSTEP_ROOT}/Local
13GNUSTEP_NETWORK_ROOT= ${GNUSTEP_ROOT}/Network 13GNUSTEP_NETWORK_ROOT= ${GNUSTEP_ROOT}/Network
14GNUSTEP_MAKEFILES= ${GNUSTEP_ROOT}/${GNUSTEP_SUBDIR}/Makefiles 14GNUSTEP_MAKEFILES= ${GNUSTEP_ROOT}/${GNUSTEP_SUBDIR}/Makefiles
@@ -38,32 +38,61 @@ GNUSTEP_RFLAGS= ${GNUSTEP_LFLAGS:S/-L/$ @@ -38,32 +38,61 @@ GNUSTEP_RFLAGS= ${GNUSTEP_LFLAGS:S/-L/$
38GNUSTEP_RFLAGS?= 38GNUSTEP_RFLAGS?=
39.endif 39.endif
40GNUSTEP_LDFLAGS= ${GNUSTEP_LFLAGS} ${GNUSTEP_RFLAGS} 40GNUSTEP_LDFLAGS= ${GNUSTEP_LFLAGS} ${GNUSTEP_RFLAGS}
41 41
42.if defined(FIX_GNUSTEP_INSTALLATION_DIR) 42.if defined(FIX_GNUSTEP_INSTALLATION_DIR)
43SUBST_CLASSES+= gnustep_installation_dir 43SUBST_CLASSES+= gnustep_installation_dir
44SUBST_STAGE.gnustep_installation_dir= post-patch 44SUBST_STAGE.gnustep_installation_dir= post-patch
45SUBST_FILES.gnustep_installation_dir?= GNUmakefile 45SUBST_FILES.gnustep_installation_dir?= GNUmakefile
46SUBST_SED.gnustep_installation_dir+= -e 's|GNUSTEP_INSTALLATION_DIR.*=.*..GNUSTEP_\(.*\)_ROOT.*|GNUSTEP_INSTALLATION_DOMAIN = \1|' 46SUBST_SED.gnustep_installation_dir+= -e 's|GNUSTEP_INSTALLATION_DIR.*=.*..GNUSTEP_\(.*\)_ROOT.*|GNUSTEP_INSTALLATION_DOMAIN = \1|'
47SUBST_SED.gnustep_installation_dir+= -e 's|\$$(GNUSTEP_INSTALLATION_DIR)/Libraries|$${DESTDIR}${GNUSTEP_LIB_DIR}/Libraries/${PKGNAME}|g' 47SUBST_SED.gnustep_installation_dir+= -e 's|\$$(GNUSTEP_INSTALLATION_DIR)/Libraries|$${DESTDIR}${GNUSTEP_LIB_DIR}/Libraries/${PKGNAME}|g'
48SUBST_SED.gnustep_installation_dir+= -e 's|INSTALL_ROOT_DIR|DESTDIR|g' 48SUBST_SED.gnustep_installation_dir+= -e 's|INSTALL_ROOT_DIR|DESTDIR|g'
49.endif 49.endif
50 50
 51GNUSTEP_FAKE_PRIVILEGED_BUILD?= YES
 52
 53.if !empty(GNUSTEP_FAKE_PRIVILEGED_BUILD:M[yY][eE][sS])
 54post-wrapper: create-gnustep-chown-links
 55
 56create-gnustep-chown-links:
 57 ${ECHO} > ${BUILDLINK_BINDIR}/chown '#!${SH:Q}'
 58 ${ECHO} >> ${BUILDLINK_BINDIR}/chown '${CHOWN:Q} "$$@" 2>/dev/null || \'
 59 ${ECHO} >> ${BUILDLINK_BINDIR}/chown '${TRUE}'
 60 ${ECHO} > ${BUILDLINK_BINDIR}/chgrp '#!${SH:Q}'
 61 ${ECHO} >> ${BUILDLINK_BINDIR}/chgrp '${CHGRP:Q} "$$@" 2>/dev/null || \'
 62 ${ECHO} >> ${BUILDLINK_BINDIR}/chgrp '${TRUE}'
 63 ${ECHO} > ${BUILDLINK_BINDIR}/install '#!${SH:Q}'
 64 ${ECHO} >> ${BUILDLINK_BINDIR}/install '${INSTALL:Q} "$$@" 2>/dev/null || \'
 65 ${ECHO} >> ${BUILDLINK_BINDIR}/install '${INSTALL:Q} `${ECHO} "$$@" | \
 66 ${SED} -e "s/-[og][ ]*[^ ]*//g"`'
 67 ${CHMOD} +x ${BUILDLINK_BINDIR}/chown
 68 ${CHMOD} +x ${BUILDLINK_BINDIR}/chgrp
 69 ${CHMOD} +x ${BUILDLINK_BINDIR}/install
 70
 71GNUSTEP_INSTALL= ${BUILDLINK_BINDIR}/install
 72GNUSTEP_INSTALL_DATA= ${INSTALL_DATA:S/${INSTALL}/${GNUSTEP_INSTALL}/}
 73GNUSTEP_INSTALL_PROGRAM=${INSTALL_PROGRAM:S/${INSTALL}/${GNUSTEP_INSTALL}/}
 74.else
 75GNUSTEP_INSTALL= ${INSTALL}
 76GNUSTEP_INSTALL_DATA= ${INSTALL_DATA}
 77GNUSTEP_INSTALL_PROGRAM=${INSTALL_PROGRAM}
 78.endif
 79
51GNUSTEP_OVERRIDE_INSTALL?= YES 80GNUSTEP_OVERRIDE_INSTALL?= YES
52 81
53.if !empty(GNUSTEP_OVERRIDE_INSTALL:M[yY][eE][sS]) 82.if !empty(GNUSTEP_OVERRIDE_INSTALL:M[yY][eE][sS])
54MAKE_ENV+= INSTALL=${INSTALL:Q} 83MAKE_ENV+= INSTALL=${GNUSTEP_INSTALL:Q}
55MAKE_ENV+= INSTALL_PROGRAM=${INSTALL_PROGRAM:Q} 84MAKE_ENV+= INSTALL_DATA=${GNUSTEP_INSTALL_DATA:Q}
56MAKE_ENV+= INSTALL_DATA=${INSTALL_DATA:Q} 85MAKE_ENV+= INSTALL_PROGRAM=${GNUSTEP_INSTALL_PROGRAM:Q}
57.endif 86.endif
58 87
59.if !defined(NO_GNUSTEP_ENV) 88.if !defined(NO_GNUSTEP_ENV)
60 89
61PATH:= ${GNUSTEP_PATH}:${PATH} 90PATH:= ${GNUSTEP_PATH}:${PATH}
62 91
63LDFLAGS+= ${GNUSTEP_LDFLAGS} 92LDFLAGS+= ${GNUSTEP_LDFLAGS}
64CPPFLAGS+= ${GNUSTEP_IFLAGS} 93CPPFLAGS+= ${GNUSTEP_IFLAGS}
65CFLAGS+= ${GNUSTEP_IFLAGS} 94CFLAGS+= ${GNUSTEP_IFLAGS}
66 95
67USE_TOOLS+= gmake 96USE_TOOLS+= gmake
68. if defined(GNUSTEP_MAKEFILE) 97. if defined(GNUSTEP_MAKEFILE)
69MAKE_FILE= ${GNUSTEP_MAKEFILE} 98MAKE_FILE= ${GNUSTEP_MAKEFILE}