0e37f0df4d
not on by default). Separate out the variable defintions that are now made by the new tools framework. Some of the trickier platforms (AIX, IRIX, Interix, OSF1) still need more work.
216 lines
6.1 KiB
Makefile
216 lines
6.1 KiB
Makefile
# $NetBSD: NetBSD.mk,v 1.12 2005/05/03 18:30:12 jlam Exp $
|
|
#
|
|
# Variable definitions for the NetBSD operating system.
|
|
|
|
# Needed for 1.6.1 and earlier due to rpcgen bugs and paths
|
|
.if defined(CPP) && ${CPP} == "cpp"
|
|
CPP= /usr/bin/cpp
|
|
.endif
|
|
ECHO_N?= ${ECHO} -n
|
|
PKGLOCALEDIR?= share
|
|
PS?= /bin/ps
|
|
RSH?= /usr/bin/rsh
|
|
SU?= /usr/bin/su
|
|
TYPE?= type # Shell builtin
|
|
|
|
.if empty(_USE_NEW_TOOLS:M[yY][eE][sS])
|
|
AWK?= /usr/bin/awk
|
|
BASENAME?= /usr/bin/basename
|
|
CAT?= /bin/cat
|
|
CHMOD?= /bin/chmod
|
|
CHOWN?= /usr/sbin/chown
|
|
CHGRP?= /usr/bin/chgrp
|
|
CMP?= /usr/bin/cmp
|
|
CP?= /bin/cp
|
|
CUT?= /usr/bin/cut
|
|
DATE?= /bin/date
|
|
DIRNAME?= /usr/bin/dirname
|
|
ECHO?= echo # Shell builtin
|
|
EGREP?= /usr/bin/egrep
|
|
EXPR?= /bin/expr
|
|
FALSE?= false # Shell builtin
|
|
FGREP?= /usr/bin/fgrep
|
|
FILE_CMD?= /usr/bin/file
|
|
FIND?= /usr/bin/find
|
|
GMAKE?= ${LOCALBASE}/bin/gmake
|
|
GREP?= /usr/bin/grep
|
|
.if exists(/bin/tar)
|
|
GTAR?= /bin/tar
|
|
.else
|
|
GTAR?= /usr/bin/tar
|
|
.endif
|
|
GUNZIP_CMD?= /usr/bin/gunzip -f
|
|
GZCAT?= /usr/bin/gzcat
|
|
GZIP_CMD?= /usr/bin/gzip -nf ${GZIP}
|
|
HEAD?= /usr/bin/head
|
|
HOSTNAME_CMD?= /bin/hostname
|
|
ID?= /usr/bin/id
|
|
.if exists(/sbin/ldconfig)
|
|
LDCONFIG?= /sbin/ldconfig
|
|
.else
|
|
LDCONFIG?= true
|
|
.endif
|
|
LN?= /bin/ln
|
|
LS?= /bin/ls
|
|
M4?= /usr/bin/m4
|
|
MAIL_CMD?= /usr/bin/mail
|
|
MKDIR?= /bin/mkdir -p
|
|
MTREE?= /usr/sbin/mtree
|
|
MV?= /bin/mv
|
|
NICE?= /usr/bin/nice
|
|
PATCH?= /usr/bin/patch
|
|
PAX?= /bin/pax
|
|
PERL5?= ${LOCALBASE}/bin/perl
|
|
PWD_CMD?= /bin/pwd # needs to print physical path
|
|
RM?= /bin/rm
|
|
RMDIR?= /bin/rmdir
|
|
SED?= /usr/bin/sed
|
|
SETENV?= /usr/bin/env
|
|
SH?= /bin/sh
|
|
SHLOCK= /usr/bin/shlock
|
|
SORT?= /usr/bin/sort
|
|
TAIL?= /usr/bin/tail
|
|
.if exists(/bin/tar)
|
|
TAR?= /bin/tar
|
|
.else
|
|
TAR?= /usr/bin/tar
|
|
.endif
|
|
TEE?= /usr/bin/tee
|
|
TEST?= test # Shell builtin
|
|
TOUCH?= /usr/bin/touch
|
|
TR?= /usr/bin/tr
|
|
TRUE?= true # Shell builtin
|
|
TSORT?= /usr/bin/tsort
|
|
WC?= /usr/bin/wc
|
|
XARGS?= /usr/bin/xargs
|
|
.endif
|
|
|
|
.if exists(/usr/sbin/user)
|
|
USERADD?= /usr/sbin/useradd
|
|
GROUPADD?= /usr/sbin/groupadd
|
|
.else
|
|
USERADD?= ${LOCALBASE}/sbin/useradd
|
|
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
|
|
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
|
|
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
|
|
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_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_MISCMAN_DIR= ${IMAKE_MAN_SOURCE_PATH}7
|
|
|
|
_DO_SHLIB_CHECKS= yes # fixup PLIST for shared libs/run ldconfig
|
|
_IMAKE_MAKE= ${MAKE} # program which gets invoked by imake
|
|
.if exists(/usr/include/netinet6)
|
|
_OPSYS_HAS_INET6= yes # IPv6 is standard
|
|
.else
|
|
_OPSYS_HAS_INET6= no # IPv6 is not standard
|
|
.endif
|
|
_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
|
|
_PREFORMATTED_MAN_DIR= cat # directory where catman pages are
|
|
_USE_GNU_GETTEXT= no # Don't use GNU gettext
|
|
_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
|
|
|
|
# for programs which use dlopen()
|
|
# not necessary since 1.6 (shared libs are linked against libgcc_pic)
|
|
.if !empty(OS_VERSION:M1.5*)
|
|
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 \
|
|
/dev/ttyC1
|
|
.elif (${MACHINE_ARCH} == "i386")
|
|
DEFAULT_SERIAL_DEVICE?= /dev/tty00
|
|
SERIAL_DEVICES?= /dev/tty00 \
|
|
/dev/tty01
|
|
.elif (${MACHINE_ARCH} == m68k)
|
|
DEFAULT_SERIAL_DEVICE?= /dev/tty00
|
|
SERIAL_DEVICES?= /dev/tty00 \
|
|
/dev/tty01
|
|
.elif (${MACHINE_ARCH} == mipsel)
|
|
DEFAULT_SERIAL_DEVICE?= /dev/ttyC0
|
|
SERIAL_DEVICES?= /dev/ttyC0 \
|
|
/dev/ttyC1
|
|
.elif (${MACHINE_ARCH} == "sparc")
|
|
DEFAULT_SERIAL_DEVICE?= /dev/ttya
|
|
SERIAL_DEVICES?= /dev/ttya \
|
|
/dev/ttyb
|
|
.else
|
|
DEFAULT_SERIAL_DEVICE?= /dev/null
|
|
SERIAL_DEVICES?= /dev/null
|
|
.endif
|
|
|
|
# Add -mieee to CFLAGS and FFLAGS for NetBSD->=1.5V-alpha
|
|
.for __tmp__ in 1.5[V-Z] 1.5[A-Z][A-Z]* 1.[6-9]* [2-9].*
|
|
. if ${MACHINE_PLATFORM:MNetBSD-${__tmp__}-alpha} != ""
|
|
CFLAGS+= -mieee
|
|
FFLAGS+= -mieee
|
|
. endif # MACHINE_PLATFORM
|
|
.endfor # __tmp__
|
|
|
|
# check for kqueue(2) support, added in NetBSD-1.6J
|
|
.if exists(/usr/include/sys/event.h)
|
|
PKG_HAVE_KQUEUE= # defined
|
|
.endif
|
|
|
|
# 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
|
|
|
|
# If games are to be installed setgid, then SETGIDGAME is set to 'yes'
|
|
# (it defaults to 'no' as per bsd.pkg.defaults.mk).
|
|
# Set the group and mode to meaningful values in that case (defaults to
|
|
# BINOWN, BINGRP and BINMODE as per bsd.pkg.defaults.mk).
|
|
.if !(empty(SETGIDGAME:M[yY][eE][sS]))
|
|
GAMEOWN= games
|
|
GAMEGRP= games
|
|
GAMEMODE= 2555
|
|
.endif
|