# $NetBSD: FreeBSD.mk,v 1.24 2008/03/04 06:45:34 jlam 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 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 IMAKE_MAN_SUFFIX= 1 IMAKE_LIBMAN_SUFFIX= 3 IMAKE_KERNMAN_SUFFIX= 4 IMAKE_FILEMAN_SUFFIX= 5 IMAKE_GAMEMAN_SUFFIX= 6 IMAKE_MISCMAN_SUFFIX= 7 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_MANNEWSUFFIX= ${IMAKE_MAN_SUFFIX} IMAKE_MANINSTALL?= maninstall catinstall _OPSYS_EMULDIR.freebsd= # empty _OPSYS_EMULDIR.linux= /compat/linux .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 _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 _STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U-s} # cc(1) option to strip _STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip DEFAULT_SERIAL_DEVICE?= /dev/cuaa0 SERIAL_DEVICES?= /dev/cuaa0 # check for kqueue(2) support .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 defaults/mk.conf). # Set the group and mode to meaningful values in that case (defaults to # BINOWN, BINGRP and BINMODE as per defaults/mk.conf). .if !(empty(SETGIDGAME:M[yY][eE][sS])) GAMES_USER= games GAMES_GROUP= games GAMEOWN= ${GAMES_USER} GAMEGRP= ${GAMES_GROUP} GAMEMODE= 2555 GAMEDIRMODE= 0775 .endif