summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorrillig <rillig@pkgsrc.org>2007-10-18 21:52:23 +0000
committerrillig <rillig@pkgsrc.org>2007-10-18 21:52:23 +0000
commitf53c1ce2ee28d30f860647f5e094a47fda083188 (patch)
tree8bc63956e40e42228866a4cb05bd8547950f5fa7 /mk
parentb83eb9eef883b73fc35d944ea0c3b617ac057d8a (diff)
downloadpkgsrc-f53c1ce2ee28d30f860647f5e094a47fda083188.tar.gz
Factored out the parts that are common between all the supported
platforms, mainly because it wouldn't have made sense to document the variables in one of those files, but they need to be documented somewhere. Added the file defaults.mk, which now serves as the reference document which provides useful default values and _explains_ the variables.
Diffstat (limited to 'mk')
-rw-r--r--mk/platform/AIX.mk10
-rw-r--r--mk/platform/BSDOS.mk10
-rw-r--r--mk/platform/Darwin.mk10
-rw-r--r--mk/platform/DragonFly.mk12
-rw-r--r--mk/platform/FreeBSD.mk12
-rw-r--r--mk/platform/HPUX.mk17
-rw-r--r--mk/platform/IRIX.mk10
-rw-r--r--mk/platform/Interix.mk9
-rw-r--r--mk/platform/Linux.mk17
-rw-r--r--mk/platform/NetBSD.mk18
-rw-r--r--mk/platform/OSF1.mk12
-rw-r--r--mk/platform/OpenBSD.mk15
-rw-r--r--mk/platform/SunOS.mk15
-rw-r--r--mk/platform/UnixWare.mk9
-rw-r--r--mk/platform/defaults.mk133
15 files changed, 189 insertions, 120 deletions
diff --git a/mk/platform/AIX.mk b/mk/platform/AIX.mk
index 1f0fe382bf7..af23c00a94d 100644
--- a/mk/platform/AIX.mk
+++ b/mk/platform/AIX.mk
@@ -1,4 +1,4 @@
-# $NetBSD: AIX.mk,v 1.27 2007/10/09 20:39:39 rillig Exp $
+# $NetBSD: AIX.mk,v 1.28 2007/10/18 21:52:23 rillig Exp $
#
# Variable definitions for the AIX operating system.
@@ -16,18 +16,12 @@ STRIP?= ${LOCALBASE}/bin/strip
SU?= /usr/bin/su
TYPE?= type # Shell builtin
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /sbin/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= system
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# imake installs manpages in weird places
# these values from /usr/X11R6/lib/X11/config/NetBSD.cf
@@ -86,3 +80,5 @@ SERIAL_DEVICES?= /dev/tty0 \
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/BSDOS.mk b/mk/platform/BSDOS.mk
index 4693933d2ff..6108617579a 100644
--- a/mk/platform/BSDOS.mk
+++ b/mk/platform/BSDOS.mk
@@ -1,4 +1,4 @@
-# $NetBSD: BSDOS.mk,v 1.21 2007/07/02 14:03:35 joerg Exp $
+# $NetBSD: BSDOS.mk,v 1.22 2007/10/18 21:52:23 rillig Exp $
#
# Variable definitions for the BSD/OS operating system.
@@ -17,8 +17,6 @@ SU?= /usr/bin/su
# sh doesn't have built-in type
TYPE?= which
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
.if ${OBJECT_FMT} == "ELF"
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
.else
@@ -26,13 +24,9 @@ EXPORT_SYMBOLS_LDFLAGS?=-Wl,--export-dynamic
.endif
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /sbin/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= wheel
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# imake installs manpages in weird places
# XXX: assume NetBSD defaults until somebody determines correct values
@@ -94,3 +88,5 @@ PKG_CREATE_USERGROUP= NO # until it works
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/Darwin.mk b/mk/platform/Darwin.mk
index a852a90088a..40e8e252abd 100644
--- a/mk/platform/Darwin.mk
+++ b/mk/platform/Darwin.mk
@@ -1,4 +1,4 @@
-# $NetBSD: Darwin.mk,v 1.24 2007/07/29 05:19:44 jlam Exp $
+# $NetBSD: Darwin.mk,v 1.25 2007/10/18 21:52:23 rillig Exp $
#
# Variable definitions for the Darwin operating system.
@@ -7,7 +7,6 @@ CPP= ${CC} -E ${CPP_PRECOMP_FLAGS}
.endif
ECHO_N?= ${ECHO} -n
LDD?= /usr/bin/otool -L
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
PKGLOCALEDIR?= share
PS?= /bin/ps
# XXX: default from defaults/mk.conf. Verify/correct for this platform
@@ -22,19 +21,14 @@ IMAKEOPTS+= -DInstallFlags=-c # do not set user or group
.if !defined(PKGSRC_COMPILER) || !empty(PKGSRC_COMPILER:Mgcc)
CPP_PRECOMP_FLAGS?= -no-cpp-precomp # use the GNU cpp, not the OS X cpp
.endif
-DEF_UMASK?= 0022
DEFAULT_SERIAL_DEVICE?= /dev/null
EXPORT_SYMBOLS_LDFLAGS?= # Don't add symbols to the dynamic symbol table
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /usr/bin/false
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= /usr/bin/sudo ${SH} -c
ROOT_GROUP?= wheel
ROOT_USER?= root
SERIAL_DEVICES?= /dev/null
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
GROUPADD?= ${LOCALBASE}/sbin/groupadd
USERADD?= ${LOCALBASE}/sbin/useradd
@@ -106,3 +100,5 @@ CONFIGURE_ENV+= ac_cv_func_poll=no
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/DragonFly.mk b/mk/platform/DragonFly.mk
index f14e118ea71..07d94760aa8 100644
--- a/mk/platform/DragonFly.mk
+++ b/mk/platform/DragonFly.mk
@@ -1,28 +1,20 @@
-# $NetBSD: DragonFly.mk,v 1.32 2007/07/29 05:19:44 jlam Exp $
+# $NetBSD: DragonFly.mk,v 1.33 2007/10/18 21:52:23 rillig Exp $
#
# Variable definitions for the DragonFly operating system.
ECHO_N?= ${ECHO} -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
IMAKEOPTS+= -DBuildHtmlManPages=NO
-PKGLOCALEDIR?= share
PS?= /bin/ps
PW?= /usr/sbin/pw
SU?= /usr/bin/su
TYPE?= type # Shell builtin
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /sbin/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= wheel
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# DragonFly does not provide an X11, so default to modular X.org
X11_TYPE?= modular
@@ -92,3 +84,5 @@ GAMEGRP= games
GAMEMODE= 2555
GAMEDIRMODE= 0775
.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/FreeBSD.mk b/mk/platform/FreeBSD.mk
index 7a4b830eb53..aed07b2805a 100644
--- a/mk/platform/FreeBSD.mk
+++ b/mk/platform/FreeBSD.mk
@@ -1,19 +1,15 @@
-# $NetBSD: FreeBSD.mk,v 1.21 2007/07/29 05:19:44 jlam Exp $
+# $NetBSD: FreeBSD.mk,v 1.22 2007/10/18 21:52:23 rillig Exp $
#
# Variable definitions for the FreeBSD operating system.
BRANDELF?= /usr/bin/brandelf # used by linux compat layer
ECHO_N?= ${ECHO} -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
IMAKEOPTS+= -DBuildHtmlManPages=NO
-PKGLOCALEDIR?= share
PS?= /bin/ps
PW?= /usr/sbin/pw
SU?= /usr/bin/su
TYPE?= type # Shell builtin
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
.if ${OBJECT_FMT} == "ELF"
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
.else
@@ -21,13 +17,9 @@ EXPORT_SYMBOLS_LDFLAGS?=-Wl,--export-dynamic
.endif
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /sbin/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= wheel
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# imake installs manpages in weird places
IMAKE_MAN_SOURCE_PATH= man/man
@@ -94,3 +86,5 @@ GAMEGRP= games
GAMEMODE= 2555
GAMEDIRMODE= 0775
.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/HPUX.mk b/mk/platform/HPUX.mk
index 8e3287ab54a..c0e8754d7d1 100644
--- a/mk/platform/HPUX.mk
+++ b/mk/platform/HPUX.mk
@@ -1,11 +1,9 @@
-# $NetBSD: HPUX.mk,v 1.8 2007/10/16 12:11:25 tnn Exp $
+# $NetBSD: HPUX.mk,v 1.9 2007/10/18 21:52:23 rillig Exp $
#
# Variable definitions for the HP-UX operating system.
CPP?= /opt/langtools/lbin/cpp
ECHO_N?= /usr/bin/printf # echo doesn't understand -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
-PKGLOCALEDIR?= share
PS?= /bin/ps
SU?= /usr/bin/su
TYPE?= type # Shell builtin
@@ -13,19 +11,14 @@ TYPE?= type # Shell builtin
USERADD?= /usr/sbin/useradd
GROUPADD?= /usr/sbin/groupadd
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /etc/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= sys
TOUCH_FLAGS?= # touch doesn't understand -f
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
+
# imake installs manpages in weird places
# these values from /usr/X11R6/lib/X11/config/NetBSD.cf
IMAKE_MAN_SOURCE_PATH= man/cat
@@ -78,5 +71,7 @@ KRB5_DEFAULT?= mit-krb5
PREFER.openssl?= pkgsrc
PREFER.zlib?= pkgsrc
-_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U} # cc(1) option to strip
-_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U} # install(1) option to strip
+_STRIPFLAG_CC?= # none; XXX: why?
+_STRIPFLAG_INSTALL?= # none; XXX: why?
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/IRIX.mk b/mk/platform/IRIX.mk
index 119df415909..bf5e4ac4b58 100644
--- a/mk/platform/IRIX.mk
+++ b/mk/platform/IRIX.mk
@@ -1,9 +1,8 @@
-# $NetBSD: IRIX.mk,v 1.30 2007/07/29 05:19:44 jlam Exp $
+# $NetBSD: IRIX.mk,v 1.31 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the IRIX operating system.
ECHO_N?= ${ECHO} -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
IMAKEOPTS+= -DMakeCmd=${PREFIX}/bin/bmake -DProjectRoot=${X11BASE}
IMAKEOPTS+= -DManUsr=${PREFIX}
.if empty(OS_VERSION:M6*)
@@ -11,13 +10,10 @@ IMAKEOPTS+= -DShLibDir=${X11BASE}/lib
IMAKEOPTS+= -DOptimizerLevel="${CFLAGS}"
IMAKEOPTS+= -DManPath=${PREFIX}/man
.endif
-PKGLOCALEDIR?= share
PS?= /sbin/ps
SU?= /sbin/su
TYPE?= /sbin/type
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 022
DEFAULT_SERIAL_DEVICE?= /dev/null
EXPORT_SYMBOLS_LDFLAGS?= # Don't add symbols to the dynamic symbol table
MOTIF_TYPE_DEFAULT?= dt # default 2.0 compatible libs type
@@ -26,8 +22,6 @@ ROOT_CMD?= ${SU} - root -c
ROOT_GROUP?= sys
ROOT_USER?= root
SERIAL_DEVICES?= /dev/null
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
ULIMIT_CMD_memorysize?= ulimit -v `ulimit -H -v`
# imake installs manpages in weird places
@@ -121,3 +115,5 @@ _OPSYS_MAX_CMDLEN_CMD= /usr/sbin/sysconf ARG_MAX
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/Interix.mk b/mk/platform/Interix.mk
index cd8c447d084..afa54db19fb 100644
--- a/mk/platform/Interix.mk
+++ b/mk/platform/Interix.mk
@@ -1,4 +1,4 @@
-# $NetBSD: Interix.mk,v 1.52 2007/07/02 14:03:40 joerg Exp $
+# $NetBSD: Interix.mk,v 1.53 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the Interix operating system.
@@ -79,9 +79,7 @@ USE_BULK_TIMESTAMPS?= no
###
ECHO_N?= /bin/printf %s # does not support "echo -n"
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
IMAKEOPTS+= -DBuildHtmlManPages=NO
-PKGLOCALEDIR?= share
PS?= /bin/ps
SU?= /bin/su
TYPE?= type # Shell builtin
@@ -91,7 +89,6 @@ GROUPADD?= ${LOCALBASE}/sbin/groupadd
_PKG_USER_HOME?= # empty by default
_USER_DEPENDS= user>=20040426:../../sysutils/user_interix
-CPP_PRECOMP_FLAGS?= # unset
CONFIG_RPATH_OVERRIDE?= config.rpath */config.rpath */*/config.rpath
DEF_UMASK?= 002
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
@@ -105,8 +102,6 @@ ROOT_CMD?= ${SU} - "$$(id -un ${ROOT_USER})" -c
ROOT_USER?= ${BINOWN}
ROOT_GROUP?= 131616 # +Administrators or native language equivalent
TOUCH_FLAGS?=
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
ULIMIT_CMD_memorysize?= ulimit -v `ulimit -H -v`
# imake installs manpages in weird places
@@ -180,3 +175,5 @@ _OPSYS_MAX_CMDLEN_CMD= ${ECHO} 262144
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/Linux.mk b/mk/platform/Linux.mk
index 892e4b0b4d0..fd15e35de21 100644
--- a/mk/platform/Linux.mk
+++ b/mk/platform/Linux.mk
@@ -1,32 +1,29 @@
-# $NetBSD: Linux.mk,v 1.29 2007/07/29 05:19:44 jlam Exp $
+# $NetBSD: Linux.mk,v 1.30 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the Linux operating system.
ECHO_N?= ${ECHO} -n
-IMAKE_MAKE?= ${GMAKE} # program which gets invoked by imake
+
+# imake on Linux generates Makefiles that can only be understood by
+# GNU make.
+IMAKE_MAKE?= ${GMAKE}
+
IMAKEOPTS+= -DBuildHtmlManPages=NO
-PKGLOCALEDIR?= share
PS?= /bin/ps
# XXX: default from defaults/mk.conf. Verify/correct for this platform
# and remove this comment.
SU?= /bin/su
TYPE?= type # Shell builtin
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 022
DEFAULT_SERIAL_DEVICE?= /dev/null
EXPORT_SYMBOLS_LDFLAGS?= # Don't add symbols to the dynamic symbol table
GROUPADD?= /usr/sbin/groupadd
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /bin/false
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_GROUP?= root
ROOT_USER?= root
SERIAL_DEVICES?= /dev/null
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
USERADD?= /usr/sbin/useradd
# imake installs manpages in weird places
@@ -95,3 +92,5 @@ _STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip
ABI?= 64
LIBABISUFFIX?= 64
.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/NetBSD.mk b/mk/platform/NetBSD.mk
index 9839a705640..80d98bb1254 100644
--- a/mk/platform/NetBSD.mk
+++ b/mk/platform/NetBSD.mk
@@ -1,4 +1,4 @@
-# $NetBSD: NetBSD.mk,v 1.25 2007/08/21 22:49:33 jlam Exp $
+# $NetBSD: NetBSD.mk,v 1.26 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the NetBSD operating system.
@@ -7,8 +7,6 @@
CPP= /usr/bin/cpp
.endif
ECHO_N?= ${ECHO} -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
-PKGLOCALEDIR?= share
PS?= /bin/ps
SU?= /usr/bin/su
TYPE?= type # Shell builtin
@@ -22,8 +20,6 @@ GROUPADD?= ${LOCALBASE}/sbin/groupadd
_USER_DEPENDS= user>=20000313:../../sysutils/user
.endif
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
.if ${OBJECT_FMT} == "ELF"
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
.else
@@ -31,17 +27,12 @@ EXPORT_SYMBOLS_LDFLAGS?=-Wl,--export-dynamic
.endif
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /sbin/nologin
-.if exists(${LOCALBASE}/sbin/pkg_info)
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
-.else
+.if !exists(${LOCALBASE}/sbin/pkg_info) && exists(/usr/sbin/pkg_info)
PKG_TOOLS_BIN?= /usr/sbin
.endif
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= wheel
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# imake installs manpages in weird places
# these values from /usr/X11R6/lib/X11/config/NetBSD.cf
@@ -101,9 +92,6 @@ _OPSYS_NO_WHOLE_ARCHIVE_FLAG= -Wl,--no-whole-archive
LINK_ALL_LIBGCC_HACK= -Wl,--whole-archive -lgcc -Wl,--no-whole-archive
.endif
-_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U-s} # cc(1) option to strip
-_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip
-
.if (${MACHINE_ARCH} == alpha)
DEFAULT_SERIAL_DEVICE?= /dev/ttyC0
SERIAL_DEVICES?= /dev/ttyC0 \
@@ -156,3 +144,5 @@ GAMEGRP= games
GAMEMODE= 2555
GAMEDIRMODE= 0775
.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/OSF1.mk b/mk/platform/OSF1.mk
index 6db797848bf..39c75373756 100644
--- a/mk/platform/OSF1.mk
+++ b/mk/platform/OSF1.mk
@@ -1,4 +1,4 @@
-# $NetBSD: OSF1.mk,v 1.19 2007/10/16 12:11:25 tnn Exp $
+# $NetBSD: OSF1.mk,v 1.20 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the OSF1 operating system.
@@ -11,8 +11,6 @@
CPP?= /usr/bin/cpp
ECHO_N?= ${SETENV} CMD_ENV=bsd /usr/bin/echo -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
-PKGLOCALEDIR?= share
PS?= /bin/ps
STRIP?= /usr/bin/strip
SU?= /usr/bin/su
@@ -21,18 +19,12 @@ TYPE?= type # Shell builtin
USERADD?= /usr/sbin/useradd
GROUPADD?= /usr/sbin/groupadd
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-non_hidden # add symbols to the dynamic symbol table
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /etc/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= system
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# imake installs manpages in weird places
# these values from /usr/X11R6/lib/X11/config/NetBSD.cf
IMAKE_MAN_SOURCE_PATH= man/cat
@@ -76,3 +68,5 @@ _INCOMPAT_ICONV= OSF1-*-*
_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U} # cc(1) option to strip
_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U} # install(1) option to strip
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/OpenBSD.mk b/mk/platform/OpenBSD.mk
index 1adfc22a8dc..3b951741458 100644
--- a/mk/platform/OpenBSD.mk
+++ b/mk/platform/OpenBSD.mk
@@ -1,10 +1,8 @@
-# $NetBSD: OpenBSD.mk,v 1.25 2007/07/02 14:03:41 joerg Exp $
+# $NetBSD: OpenBSD.mk,v 1.26 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the OpenBSD operating system.
ECHO_N?= ${ECHO} -n
-IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
-PKGLOCALEDIR?= share
PS?= /bin/ps
# XXX: default from defaults/mk.conf. Verify/correct for this platform
# and remove this comment.
@@ -16,8 +14,6 @@ USERADD?= /usr/sbin/useradd
GROUPADD?= /usr/sbin/groupadd
.endif
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 0022
.if ${OBJECT_FMT} == "ELF"
EXPORT_SYMBOLS_LDFLAGS?=-Wl,-E # add symbols to the dynamic symbol table
.else
@@ -25,13 +21,9 @@ EXPORT_SYMBOLS_LDFLAGS?=-Wl,--export-dynamic
.endif
MOTIF_TYPE_DEFAULT?= openmotif # default 2.0 compatible libs type
NOLOGIN?= /sbin/nologin
-PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
ROOT_CMD?= ${SU} - root -c
ROOT_USER?= root
ROOT_GROUP?= wheel
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
-ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
# imake installs manpages in weird places
# these values from /usr/X11R6/lib/X11/config/OpenBSD.cf
@@ -71,9 +63,6 @@ _USE_RPATH= yes # add rpath to LDFLAGS
_OPSYS_WHOLE_ARCHIVE_FLAG= -Wl,--whole-archive
_OPSYS_NO_WHOLE_ARCHIVE_FLAG= -Wl,--no-whole-archive
-_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U-s} # cc(1) option to strip
-_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip
-
.if (${MACHINE_ARCH} == alpha)
DEFAULT_SERIAL_DEVICE?= /dev/ttyC0
SERIAL_DEVICES?= /dev/ttyC0 \
@@ -110,3 +99,5 @@ _OPSYS_MAX_CMDLEN_CMD= /sbin/sysctl -n kern.argmax
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/SunOS.mk b/mk/platform/SunOS.mk
index f3d6a3cdb02..9071068dbad 100644
--- a/mk/platform/SunOS.mk
+++ b/mk/platform/SunOS.mk
@@ -1,4 +1,4 @@
-# $NetBSD: SunOS.mk,v 1.30 2007/07/29 05:19:44 jlam Exp $
+# $NetBSD: SunOS.mk,v 1.31 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the SunOS/Solaris operating system.
@@ -11,20 +11,22 @@ PS?= /bin/ps
SU?= /usr/bin/su
TYPE?= /usr/bin/type
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 022
DEFAULT_SERIAL_DEVICE?= /dev/null
EXPORT_SYMBOLS_LDFLAGS?= # Don't add symbols to the dynamic symbol table
GROUPADD?= /usr/sbin/groupadd
MOTIF_TYPE_DEFAULT?= dt # default 2.0 compatible libs type
-NOLOGIN?= ${FALSE}
ROOT_CMD?= ${SU} - root -c
ROOT_GROUP?= root
ROOT_USER?= root
SERIAL_DEVICES?= /dev/null
+
+# `ulimit' cannot parse localized messages of "unlimited", so force the
+# language to be "C".
+#
ULIMIT_CMD_datasize?= ulimit -d `${SETENV} LC_MESSAGES=C ulimit -H -d`
ULIMIT_CMD_stacksize?= ulimit -s `${SETENV} LC_MESSAGES=C ulimit -H -s`
ULIMIT_CMD_memorysize?= ulimit -v `${SETENV} LC_MESSAGES=C ulimit -H -v`
+
USERADD?= /usr/sbin/useradd
# imake installs manpages in weird places
@@ -78,9 +80,6 @@ _OPSYS_NO_WHOLE_ARCHIVE_FLAG= -z defaultextract
# incompatible.
_INCOMPAT_ICONV= SunOS-*-*
-_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U-s} # cc(1) option to strip
-_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip
-
PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
# check for maximum command line length and set it in configure's environment,
@@ -99,3 +98,5 @@ PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/UnixWare.mk b/mk/platform/UnixWare.mk
index fbcbab62c2d..d604401703b 100644
--- a/mk/platform/UnixWare.mk
+++ b/mk/platform/UnixWare.mk
@@ -1,4 +1,4 @@
-# $NetBSD: UnixWare.mk,v 1.24 2007/07/02 14:03:41 joerg Exp $
+# $NetBSD: UnixWare.mk,v 1.25 2007/10/18 21:52:24 rillig Exp $
#
# Variable definitions for the UnixWare 7 operating system.
@@ -11,19 +11,14 @@ PS?= /usr/bin/ps
SU?= /usr/bin/su
TYPE?= /usr/bin/type
-CPP_PRECOMP_FLAGS?= # unset
-DEF_UMASK?= 022
DEFAULT_SERIAL_DEVICE?= /dev/null
EXPORT_SYMBOLS_LDFLAGS?= # Don't add symbols to the dynamic symbol table
GROUPADD?= /usr/sbin/groupadd
MOTIF_TYPE_DEFAULT?= dt # default 2.0 compatible libs type
-NOLOGIN?= ${FALSE}
ROOT_CMD?= ${SU} - root -c
ROOT_GROUP?= root
ROOT_USER?= root
SERIAL_DEVICES?= /dev/null
-ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
-ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
ULIMIT_CMD_memorysize?= ulimit -v `ulimit -H -v`
USERADD?= /usr/sbin/useradd
@@ -92,3 +87,5 @@ PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
#GAMEMODE= 2555
#GAMEDIRMODE= 0775
#.endif
+
+.include "${.PARSEDIR}/defaults.mk"
diff --git a/mk/platform/defaults.mk b/mk/platform/defaults.mk
new file mode 100644
index 00000000000..07c37957660
--- /dev/null
+++ b/mk/platform/defaults.mk
@@ -0,0 +1,133 @@
+# $NetBSD: defaults.mk,v 1.1 2007/10/18 21:52:24 rillig Exp $
+#
+# This file contains the default values for variables that depend on the
+# base system. It should be included from mk/platform/${OPSYS}.mk after
+# setting the values that differ from the ones mentioned here.
+#
+
+_VARGROUPS+= platform
+_SYS_VARS.platform= PKGLOCALEDIR CPP_PRECOMP_FLAGS DEF_UMASK \
+ NOLOGIN PKG_TOOLS_BIN IMAKE_MAKE
+
+# On some systems, locale files are in lib/locale, on other systems they
+# are in share/locale. The latter is more popular.
+#
+# Keywords: locale
+#
+PKGLOCALEDIR?= share
+
+# XXX: why aren't these in tools/${OPSYS}.mk?
+#CPP
+#ECHO_N
+#IMAKE_MAKE
+#PS
+#SU
+#TYPE
+#USERADD
+#GROUPADD
+
+# XXX: Is this variable really necessary? It should be possible to
+# embed these flags into CPP for Darwin.
+CPP_PRECOMP_FLAGS?= # none
+
+# A sensible value for umask. This is only used in the install phase for
+# emitting a warning, since some packages install their files using cp(1).
+#
+# Keywords: umask
+#
+DEF_UMASK?= 0022
+
+#EXPORT_SYMBOLS_LDFLAGS
+#MOTIF_TYPE_DEFAULT
+
+# The program that is run when a user manages to login to an account that
+# has not been intended for interactive use. If your operating system
+# provides a special command for this purpose, you can use that.
+#
+# XXX: Shouldn't this always be an absolute path?
+#
+NOLOGIN?= ${FALSE}
+
+# The directory where the tools for managing binary packages can be
+# found.
+#
+PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
+
+#ROOT_CMD?= ${SU} - root -c
+#ROOT_USER?= root
+#ROOT_GROUP?= wheel
+
+# Some packages need more resources than usual for building.
+#
+# See also: UNLIMIT_RESOURCES
+#
+ULIMIT_CMD_datasize?= ulimit -d `ulimit -H -d`
+ULIMIT_CMD_stacksize?= ulimit -s `ulimit -H -s`
+ULIMIT_CMD_memorysize?= ulimit -m `ulimit -H -m`
+
+# The Makefiles generated by imake are so simple that it usually doesn't
+# matter which make(1) utility is used for them. So we just take our
+# bmake as default.
+#
+IMAKE_MAKE?= ${MAKE}
+
+# TODO: Describe the other imake things.
+#
+# Keywords: imake
+#
+#IMAKE_MAN_SOURCE_PATH= man/cat
+#IMAKE_MANNEWSUFFIX= 0
+#IMAKE_MAN_SUFFIX= 1
+#IMAKE_LIBMAN_SUFFIX= 3
+#IMAKE_KERNMAN_SUFFIX= ${IMAKE_MANNEWSUFFIX}
+#IMAKE_FILEMAN_SUFFIX= 5
+#IMAKE_GAMEMAN_SUFFIX= ${IMAKE_MANNEWSUFFIX}
+#IMAKE_MISCMAN_SUFFIX= ${IMAKE_MANNEWSUFFIX}
+#IMAKE_MAN_DIR= ${IMAKE_MAN_SOURCE_PATH}1
+#IMAKE_LIBMAN_DIR= ${IMAKE_MAN_SOURCE_PATH}3
+#IMAKE_KERNMAN_DIR= ${IMAKE_MAN_SOURCE_PATH}4
+#IMAKE_FILEMAN_DIR= ${IMAKE_MAN_SOURCE_PATH}5
+#IMAKE_GAMEMAN_DIR= ${IMAKE_MAN_SOURCE_PATH}6
+#IMAKE_MISCMAN_DIR= ${IMAKE_MAN_SOURCE_PATH}7
+#IMAKE_MANINSTALL?= maninstall catinstall
+
+# Some operating systems provide emulation for binaries of other
+# operating systems. See mk/emulator/README for more details.
+#
+#_OPSYS_EMULDIR.*
+
+#_OPSYS_HAS_INET6
+#_OPSYS_HAS_JAVA= no # Java is not standard
+#_OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages
+#_OPSYS_HAS_OSSAUDIO= yes # libossaudio is available
+#_OPSYS_PERL_REQD= # no base version of perl required
+#_OPSYS_PTHREAD_AUTO= no # -lpthread needed for pthreads
+#_OPSYS_SHLIB_TYPE= ELF/a.out # shared lib type
+#_PATCH_CAN_BACKUP= yes # native patch(1) can make backups
+#_PATCH_BACKUP_ARG?= -V simple -b # switch to patch(1) for backup suffix
+#_USE_RPATH= yes # add rpath to LDFLAGS
+
+# flags passed to the linker to extract all symbols from static archives.
+# this is GNU ld.
+#_OPSYS_WHOLE_ARCHIVE_FLAG= -Wl,--whole-archive
+#_OPSYS_NO_WHOLE_ARCHIVE_FLAG= -Wl,--no-whole-archive
+
+# The option to the C compiler for stripping.
+# XXX: Is this also used for the other compilers?
+# XXX: This should be the plain option and not depend on _INSTALL_UNSTRIPPED.
+#
+_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U-s}
+
+# The install(1) option to strip the installed files.
+# XXX: This should be the plain option and not depend on _INSTALL_UNSTRIPPED.
+#
+_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip
+
+#DEFAULT_SERIAL_DEVICE
+#SERIAL_DEVICES
+
+#PKG_HAVE_KQUEUE
+
+# check for maximum command line length and set it in configure's environment,
+# to avoid a test required by the libtool script that takes forever.
+#_OPSYS_MAX_CMDLEN_CMD= /sbin/sysctl -n kern.argmax