mirror of
https://github.com/Stichting-MINIX-Research-Foundation/pkgsrc-ng.git
synced 2025-08-03 01:38:07 -04:00
Step 0: mk/ Update Minix platform definition
We are transitionning from a full platform to a NetBSD variant, per the project policy of having a NetBSD userland. There is then little meaning in adapting all the NetBSD tests to also be true for Minix. This means the following is set as: * OPSYS = NetBSD * OS_VARIANT = Minix This also has the consequence of obsoleting a few files in pkgtools/bootstrap-mk-files.
This commit is contained in:
parent
1242aa1e36
commit
8ae4103124
@ -47,6 +47,8 @@ unprivileged=no
|
||||
|
||||
preserve_path=no
|
||||
|
||||
enable_db=yes
|
||||
|
||||
# where the building takes place
|
||||
bootstrapdir=`dirname "$0"`
|
||||
bootstrapdir=`cd "${bootstrapdir}" && pwd`
|
||||
@ -721,11 +723,12 @@ Linux)
|
||||
Minix)
|
||||
root_group=operator
|
||||
need_bsd_install=yes
|
||||
enable_db=no
|
||||
need_awk=no
|
||||
need_sed=no
|
||||
set_opsys=no
|
||||
machine_arch=`uname -p`
|
||||
LDFLAGS="-lcompat_minix -lminlib"
|
||||
check_compiler=yes
|
||||
;;
|
||||
MirBSD)
|
||||
root_group=wheel
|
||||
@ -1128,6 +1131,13 @@ if [ "$need_xargs" = "yes" ]; then
|
||||
need_extras=yes
|
||||
fi
|
||||
|
||||
if [ "$enable_db" = "yes" ]
|
||||
then
|
||||
db_flag="--enable-db"
|
||||
else
|
||||
db_flag="--disable-db"
|
||||
fi
|
||||
|
||||
echo_msg "Bootstrapping mk-files"
|
||||
run_cmd "(cd ${pkgsrcdir}/pkgtools/bootstrap-mk-files/files && env CP=${cpprog} \
|
||||
OPSYS=${opsys} MK_DST=${wrkdir}/share/mk ROOT_GROUP=${root_group} \
|
||||
@ -1148,7 +1158,7 @@ bmake="$wrkdir/bin/bmake"
|
||||
# build libnbcompat
|
||||
echo_msg "Building libnbcompat"
|
||||
copy_src $pkgsrcdir/pkgtools/libnbcompat/files libnbcompat
|
||||
run_cmd "(cd $wrkdir/libnbcompat; $shprog ./configure $configure_quiet_flags -C --prefix=$prefix --infodir=$infodir --mandir=$mandir --sysconfdir=$sysconfdir --enable-bsd-getopt --enable-db && $bmake $make_quiet_flags -j$make_jobs)"
|
||||
run_cmd "(cd $wrkdir/libnbcompat; $shprog ./configure $configure_quiet_flags -C --prefix=$prefix --infodir=$infodir --mandir=$mandir --sysconfdir=$sysconfdir --enable-bsd-getopt $db_flag && $bmake $make_quiet_flags -j$make_jobs)"
|
||||
|
||||
# bootstrap ksh if necessary
|
||||
case "$need_ksh" in
|
||||
|
@ -271,10 +271,14 @@ OS_VARIANT= SCOOSR6
|
||||
. endif
|
||||
|
||||
.elif ${OPSYS} == "Minix"
|
||||
LOWER_VENDOR?= pc
|
||||
LOWER_OPSYS:= ${OPSYS:tl}
|
||||
LDFLAGS+= -lcompat_minix -lminlib
|
||||
LOWER_VENDOR?= elf32
|
||||
OPSYS:= NetBSD
|
||||
LOWER_OPSYS:= netbsd
|
||||
OS_VARIANT:= Minix
|
||||
ROOT_GROUP:= operator
|
||||
|
||||
NATIVE_MACHINE_GNU_PLATFORM= ${NATIVE_MACHINE_GNU_ARCH}-elf32-minix
|
||||
MACHINE_GNU_PLATFORM= ${MACHINE_GNU_ARCH}-elf32-minix
|
||||
.elif !defined(LOWER_OPSYS)
|
||||
LOWER_OPSYS:= ${OPSYS:tl}
|
||||
.endif
|
||||
@ -314,6 +318,17 @@ PKGPATH?= ${.CURDIR:C|.*/([^/]*/[^/]*)$|\1|}
|
||||
# Load the settings from MAKECONF, which is /etc/mk.conf by default.
|
||||
.include <bsd.own.mk>
|
||||
|
||||
.if ${OPSYS} == "NetBSD" && ${OS_VARIANT} == "Minix"
|
||||
# Minix: For now we differ from NetBSD on the following, but the
|
||||
# way it is set in platform/NetBSD.mk prevents us from
|
||||
# setting it in the system-wide mk.conf
|
||||
.undef PKG_HAVE_KQUEUE
|
||||
_OPSYS_MAX_CMDLEN_CMD= echo 262144
|
||||
_OPSYS_SHLIB_TYPE= ELF # ELF shared libraries on Minix
|
||||
_OPSYS_HAS_OSSAUDIO= no # libossaudio is available
|
||||
_OPSYS_HAS_INET6= no # IPv6 is not standard
|
||||
.endif # ${OPSYS} == "NetBSD" && ${OS_VARIANT} == "Minix"
|
||||
|
||||
.if ${OPSYS} == "OpenBSD"
|
||||
. if defined(ELF_TOOLCHAIN) && ${ELF_TOOLCHAIN} == "yes"
|
||||
OBJECT_FMT?= ELF
|
||||
@ -371,7 +386,8 @@ SHAREMODE?= ${DOCMODE}
|
||||
|
||||
# Load the OS-specific definitions for program variables. Default to loading
|
||||
# the NetBSD ones if an OS-specific file doesn't exist.
|
||||
.if exists(${_PKGSRC_TOPDIR}/mk/platform/${OPSYS}.mk)
|
||||
|
||||
.if exists(${_PKGSRC_TOPDIR}/mk/platform/${OPSYS}.mk)
|
||||
. include "${_PKGSRC_TOPDIR}/mk/platform/${OPSYS}.mk"
|
||||
.else
|
||||
. include "${_PKGSRC_TOPDIR}/mk/platform/NetBSD.mk"
|
||||
|
4
mk/gnu-config/config.guess
vendored
4
mk/gnu-config/config.guess
vendored
@ -895,8 +895,8 @@ EOF
|
||||
# other systems with GNU libc and userland
|
||||
echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
|
||||
exit ;;
|
||||
i*86:Minix:*:*)
|
||||
echo ${UNAME_MACHINE}-pc-minix
|
||||
*:Minix:*:*)
|
||||
echo ${UNAME_MACHINE}-elf32-minix
|
||||
exit ;;
|
||||
aarch64:Linux:*:*)
|
||||
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
|
||||
|
@ -30,12 +30,14 @@
|
||||
# List of sites carrying binary pkgs. Variables "rel" and "arch" are
|
||||
# replaced with OS release ("1.5", ...) and architecture ("mipsel", ...)
|
||||
.if ${OPSYS} == "NetBSD"
|
||||
. if ${OS_VARIANT} != "Minix"
|
||||
BINPKG_SITES?= \
|
||||
http://cdn.NetBSD.org/pub/pkgsrc/packages/NetBSD/$${arch}/$${rel} \
|
||||
http://ftp6.NetBSD.org/pub/pkgsrc/packages/NetBSD/$${arch}/$${rel}
|
||||
.elif ${OPSYS} == "Minix"
|
||||
. else
|
||||
BINPKG_SITES?= \
|
||||
ftp://ftp.minix3.org/pub/minix/packages/$$(${UNAME} -r)/$${arch}
|
||||
http://www.minix3.org/pkgsrc/packages/$$(${UNAME} -r)/$${arch}
|
||||
. endif
|
||||
.elif ${OPSYS} == "DragonFly"
|
||||
BINPKG_SITES?= \
|
||||
http://mirror-master.dragonflybsd.org/packages/$${arch}/DragonFly-$${rel}/stable
|
||||
|
@ -27,8 +27,13 @@ _METADATA_TARGETS+= ${_BUILD_INFO_FILE}
|
||||
${_BUILD_INFO_FILE}: ${_PLIST_NOKEYWORDS}
|
||||
${RUN}${MKDIR} ${.TARGET:H}
|
||||
${RUN}${RM} -f ${.TARGET}.tmp
|
||||
.if ${OPSYS} == "NetBSD" && ${OS_VARIANT}
|
||||
${RUN} (${_BUILD_DEFS:NPATH:@v@${ECHO} ${v}=${${v}:S,NetBSD,Minix,:Q} ;@}) \
|
||||
> ${.TARGET}.tmp
|
||||
.else
|
||||
${RUN} (${_BUILD_DEFS:NPATH:@v@${ECHO} ${v}=${${v}:Q} ;@}) \
|
||||
> ${.TARGET}.tmp
|
||||
.endif # ${OPSYS} == "NetBSD" && ${OS_VARIANT}
|
||||
.if !empty(USE_LANGUAGES)
|
||||
${RUN}${ECHO} "CC_VERSION=${CC_VERSION}" >> ${.TARGET}.tmp
|
||||
.endif
|
||||
|
@ -1,47 +0,0 @@
|
||||
# $NetBSD: Minix.mk,v 1.6 2016/03/10 16:58:19 jperkin Exp $
|
||||
#
|
||||
# Variable definitions for the Minix operating system.
|
||||
|
||||
ECHO_N?= ${ECHO} -n
|
||||
X11_TYPE?= native
|
||||
IMAKE_MAKE?= ${MAKE} # program which gets invoked by imake
|
||||
IMAKEOPTS+= -DBuildHtmlManPages=NO
|
||||
PKGLOCALEDIR?= share
|
||||
PS?= /usr/bin/ps
|
||||
SU?= /usr/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
|
||||
NOLOGIN?= /bin/false
|
||||
PKG_TOOLS_BIN?= ${LOCALBASE}/sbin
|
||||
ROOT_CMD?= ${SU} - root -c
|
||||
ROOT_GROUP?= operator
|
||||
ROOT_USER?= root
|
||||
SERIAL_DEVICES?= /dev/null
|
||||
USERADD?= /usr/sbin/useradd
|
||||
ULIMIT_CMD_datasize?= :
|
||||
ULIMIT_CMD_stacksize?= :
|
||||
|
||||
_OPSYS_SYSTEM_RPATH?= /usr/lib
|
||||
_OPSYS_LIB_DIRS?= /usr/lib
|
||||
_OPSYS_INCLUDE_DIRS?= /usr/include
|
||||
|
||||
_OPSYS_HAS_INET6= no # IPv6 is not standard
|
||||
_OPSYS_HAS_JAVA= no # Java is not standard
|
||||
_OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages
|
||||
_OPSYS_HAS_OSSAUDIO= no # libossaudio is available
|
||||
_OPSYS_PERL_REQD= # no base version of perl required
|
||||
_OPSYS_PTHREAD_AUTO= no # -lpthread needed for pthreads
|
||||
_OPSYS_SHLIB_TYPE= ELF # ELF shared libraries on Minix
|
||||
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups
|
||||
_PATCH_BACKUP_ARG?= -b -V simple --suffix # switch to patch(1) for backup suffix
|
||||
_USE_RPATH= yes # add rpath to LDFLAGS
|
||||
|
||||
_STRIPFLAG_CC?= ${_INSTALL_UNSTRIPPED:D:U-s} # cc(1) option to strip
|
||||
_STRIPFLAG_INSTALL?= ${_INSTALL_UNSTRIPPED:D:U-s} # install(1) option to strip
|
||||
|
||||
_OPSYS_CAN_CHECK_SHLIBS= yes
|
@ -1,75 +0,0 @@
|
||||
# $NetBSD: tools.Minix.mk,v 1.4 2014/03/06 07:34:20 uebayasi Exp $
|
||||
#
|
||||
# System-supplied tools for the Minix operating system.
|
||||
|
||||
#System supplied tools
|
||||
TOOLS_PLATFORM.[?= /bin/[
|
||||
TOOLS_PLATFORM.awk?= /usr/bin/awk
|
||||
TOOLS_PLATFORM.basename?= /usr/bin/basename
|
||||
TOOLS_PLATFORM.bsdtar?= /bin/tar
|
||||
TOOLS_PLATFORM.bzcat?= /usr/bin/bzcat
|
||||
TOOLS_PLATFORM.bzip2?= /usr/bin/bzip2
|
||||
TOOLS_PLATFORM.cat?= /bin/cat
|
||||
TOOLS_PLATFORM.chgrp?= /usr/bin/chgrp
|
||||
TOOLS_PLATFORM.chmod?= /bin/chmod
|
||||
TOOLS_PLATFORM.chown?= /usr/bin/chown
|
||||
TOOLS_PLATFORM.cmp?= /usr/bin/cmp
|
||||
TOOLS_PLATFORM.cp?= /bin/cp
|
||||
TOOLS_PLATFORM.cut?= /usr/bin/cut
|
||||
TOOLS_PLATFORM.date?= /bin/date
|
||||
TOOLS_PLATFORM.diff?= /usr/bin/diff
|
||||
TOOLS_PLATFORM.dirname?= /usr/bin/dirname
|
||||
TOOLS_PLATFORM.echo?= /bin/echo
|
||||
TOOLS_PLATFORM.egrep?= /usr/bin/egrep
|
||||
TOOLS_PLATFORM.env?= /usr/bin/env
|
||||
TOOLS_PLATFORM.expr?= /bin/expr
|
||||
TOOLS_PLATFORM.false?= /bin/false
|
||||
TOOLS_PLATFORM.fetch?= /usr/bin/fetch
|
||||
TOOLS_PLATFORM.fgrep?= /usr/bin/fgrep
|
||||
TOOLS_PLATFORM.file?= /usr/bin/file
|
||||
TOOLS_PLATFORM.find?= /usr/bin/find
|
||||
TOOLS_PLATFORM.flex?= /usr/bin/flex
|
||||
TOOLS_PLATFORM.ftp?= /usr/bin/ftp
|
||||
TOOLS_PLATFORM.grep?= /usr/bin/grep
|
||||
TOOLS_PLATFORM.gunzip?= /usr/bin/gunzip -f
|
||||
TOOLS_PLATFORM.gzcat?= /usr/bin/gzcat
|
||||
TOOLS_PLATFORM.gzip?= /usr/bin/gzip -nf ${GZIP}
|
||||
TOOLS_PLATFORM.head?= /usr/bin/head
|
||||
TOOLS_PLATFORM.hostname?= /bin/hostname
|
||||
TOOLS_PLATFORM.id?= /usr/bin/id
|
||||
TOOLS_PLATFORM.install?= /usr/bin/install
|
||||
TOOLS_PLATFORM.ksh?= /bin/ksh
|
||||
TOOLS_PLATFORM.lex?= /usr/bin/lex
|
||||
TOOLS_PLATFORM.ln?= /bin/ln
|
||||
TOOLS_PLATFORM.ls?= /bin/ls
|
||||
TOOLS_PLATFORM.m4?= /usr/bin/m4
|
||||
TOOLS_PLATFORM.mail?= /usr/bin/mail
|
||||
TOOLS_PLATFORM.mkdir?= /bin/mkdir -p
|
||||
TOOLS_PLATFORM.mktemp?= /usr/bin/mktemp
|
||||
TOOLS_PLATFORM.mtree?= /usr/sbin/mtree
|
||||
TOOLS_PLATFORM.mv?= /bin/mv
|
||||
TOOLS_PLATFORM.nice?= /usr/bin/nice
|
||||
TOOLS_PLATFORM.nroff?= /usr/bin/nroff
|
||||
TOOLS_PLATFORM.patch?= /usr/bin/patch
|
||||
TOOLS_PLATFORM.pax?= /bin/pax
|
||||
TOOLS_PLATFORM.printf?= /usr/bin/printf
|
||||
TOOLS_PLATFORM.pwd?= /bin/pwd
|
||||
TOOLS_PLATFORM.rm?= /bin/rm
|
||||
TOOLS_PLATFORM.rmdir?= /bin/rmdir
|
||||
TOOLS_PLATFORM.sed?= /usr/bin/sed
|
||||
TOOLS_PLATFORM.sh?= /bin/sh
|
||||
TOOLS_PLATFORM.sleep?= /usr/bin/sleep
|
||||
TOOLS_PLATFORM.sort?= /usr/bin/sort
|
||||
TOOLS_PLATFORM.strip?= /usr/bin/strip
|
||||
TOOLS_PLATFORM.tail?= /usr/bin/tail
|
||||
TOOLS_PLATFORM.tar?= /bin/tar
|
||||
TOOLS_PLATFORM.tee?= /usr/bin/tee
|
||||
TOOLS_PLATFORM.test?= /bin/test
|
||||
TOOLS_PLATFORM.touch?= /usr/bin/touch
|
||||
TOOLS_PLATFORM.tr?= /usr/bin/tr
|
||||
TOOLS_PLATFORM.true?= /bin/true
|
||||
TOOLS_PLATFORM.tsort?= /usr/bin/tsort
|
||||
TOOLS_PLATFORM.uniq?= /usr/bin/uniq
|
||||
TOOLS_PLATFORM.wc?= /usr/bin/wc
|
||||
TOOLS_PLATFORM.xargs?= /usr/bin/xargs
|
||||
TOOLS_PLATFORM.yacc?= /usr/bin/yacc
|
@ -20,7 +20,9 @@ TOOLS_PLATFORM.csh?= /bin/csh
|
||||
TOOLS_PLATFORM.cut?= /usr/bin/cut
|
||||
TOOLS_PLATFORM.date?= /bin/date
|
||||
TOOLS_PLATFORM.diff?= /usr/bin/diff
|
||||
.if exists(/usr/bin/diff3)
|
||||
TOOLS_PLATFORM.diff3?= /usr/bin/diff3
|
||||
.endif
|
||||
TOOLS_PLATFORM.dirname?= /usr/bin/dirname
|
||||
TOOLS_PLATFORM.echo?= echo # shell builtin
|
||||
TOOLS_PLATFORM.egrep?= /usr/bin/egrep
|
||||
@ -36,7 +38,9 @@ TOOLS_PLATFORM.ftp?= /usr/bin/ftp
|
||||
TOOLS_PLATFORM.gettext?= /usr/bin/gettext
|
||||
.endif
|
||||
TOOLS_PLATFORM.grep?= /usr/bin/grep
|
||||
.if exists(/usr/bin/groff)
|
||||
TOOLS_PLATFORM.groff?= /usr/bin/groff
|
||||
.endif
|
||||
TOOLS_PLATFORM.gsoelim?= ${TOOLS_PLATFORM.soelim} # GNUish
|
||||
TOOLS_PLATFORM.gunzip?= /usr/bin/gunzip -f
|
||||
TOOLS_PLATFORM.gzcat?= /usr/bin/gzcat
|
||||
@ -44,7 +48,9 @@ TOOLS_PLATFORM.gzip?= /usr/bin/gzip -nf ${GZIP}
|
||||
TOOLS_PLATFORM.head?= /usr/bin/head
|
||||
TOOLS_PLATFORM.hostname?= /bin/hostname
|
||||
TOOLS_PLATFORM.id?= /usr/bin/id
|
||||
.if exists(/usr/bin/ident)
|
||||
TOOLS_PLATFORM.ident?= /usr/bin/ident
|
||||
.endif
|
||||
.if empty(USE_CROSS_COMPILE:M[yY][eE][sS])
|
||||
TOOLS_PLATFORM.install?= /usr/bin/install
|
||||
.else
|
||||
@ -90,7 +96,9 @@ TOOLS_PLATFORM.paxctl?= /usr/sbin/paxctl
|
||||
TOOLS_PLATFORM.printf?= /usr/bin/printf
|
||||
TOOLS_PLATFORM.pwd?= /bin/pwd
|
||||
.if empty(USE_CROSS_COMPILE:M[yY][eE][sS])
|
||||
.if exists(/usr/bin/readelf)
|
||||
TOOLS_PLATFORM.readelf?= /usr/bin/readelf
|
||||
.endif
|
||||
.else
|
||||
TOOLS_PLATFORM.readelf?= ${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-readelf
|
||||
.endif
|
||||
@ -105,7 +113,9 @@ TOOLS_PLATFORM.sleep?= /bin/sleep
|
||||
TOOLS_PLATFORM.soelim?= /usr/bin/soelim
|
||||
TOOLS_PLATFORM.sort?= /usr/bin/sort
|
||||
.if empty(USE_CROSS_COMPILE:M[yY][eE][sS])
|
||||
.if exists(/usr/bin/strip)
|
||||
TOOLS_PLATFORM.strip?= /usr/bin/strip
|
||||
.endif
|
||||
.else
|
||||
TOOLS_PLATFORM.strip?= ${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-strip
|
||||
.endif
|
||||
@ -116,7 +126,9 @@ TOOLS_PLATFORM.tar?= /bin/tar
|
||||
.elif exists(/usr/bin/tar)
|
||||
TOOLS_PLATFORM.tar?= /usr/bin/tar
|
||||
.endif
|
||||
.if exists(/usr/bin/tbl)
|
||||
TOOLS_PLATFORM.tbl?= /usr/bin/tbl
|
||||
.endif
|
||||
TOOLS_PLATFORM.tee?= /usr/bin/tee
|
||||
TOOLS_PLATFORM.test?= test # shell builtin
|
||||
TOOLS_PLATFORM.touch?= /usr/bin/touch
|
||||
|
@ -1,525 +0,0 @@
|
||||
# $NetBSD: Minix.bsd.lib.mk,v 1.1 2011/11/06 21:01:30 tcort Exp $
|
||||
# @(#)bsd.lib.mk 8.3 (Berkeley) 4/22/94
|
||||
|
||||
.if !target(__initialized__)
|
||||
__initialized__:
|
||||
.if exists(${.CURDIR}/../Makefile.inc)
|
||||
.include "${.CURDIR}/../Makefile.inc"
|
||||
.endif
|
||||
.include <bsd.own.mk>
|
||||
.include <bsd.obj.mk>
|
||||
.include <bsd.depall.mk>
|
||||
.MAIN: all
|
||||
.endif
|
||||
|
||||
.PHONY: checkver cleanlib libinstall
|
||||
realinstall: checkver libinstall
|
||||
clean cleandir: cleanlib
|
||||
|
||||
.if exists(${SHLIB_VERSION_FILE})
|
||||
SHLIB_MAJOR != . ${SHLIB_VERSION_FILE} ; echo $$major
|
||||
SHLIB_MINOR != . ${SHLIB_VERSION_FILE} ; echo $$minor
|
||||
SHLIB_TEENY != . ${SHLIB_VERSION_FILE} ; echo $$teeny
|
||||
|
||||
# Check for higher installed library versions.
|
||||
.if !defined(NOCHECKVER) && !defined(NOCHECKVER_${LIB}) && \
|
||||
exists(${BSDSRCDIR}/lib/checkver)
|
||||
checkver:
|
||||
@(cd ${.CURDIR} && \
|
||||
sh ${BSDSRCDIR}/lib/checkver -v ${SHLIB_VERSION_FILE} \
|
||||
-d ${DESTDIR}${LIBDIR} ${LIB})
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if !target(checkver)
|
||||
checkver:
|
||||
.endif
|
||||
|
||||
print-shlib-major:
|
||||
.if defined(SHLIB_MAJOR)
|
||||
@echo ${SHLIB_MAJOR}
|
||||
.else
|
||||
@false
|
||||
.endif
|
||||
|
||||
print-shlib-minor:
|
||||
.if defined(SHLIB_MINOR)
|
||||
@echo ${SHLIB_MINOR}
|
||||
.else
|
||||
@false
|
||||
.endif
|
||||
|
||||
print-shlib-teeny:
|
||||
.if defined(SHLIB_TEENY)
|
||||
@echo ${SHLIB_TEENY}
|
||||
.else
|
||||
@false
|
||||
.endif
|
||||
|
||||
.if defined(SHLIB_MAJOR) && !empty(SHLIB_MAJOR)
|
||||
.if defined(SHLIB_MINOR) && !empty(SHLIB_MINOR)
|
||||
.if defined(SHLIB_TEENY) && !empty(SHLIB_TEENY)
|
||||
SHLIB_FULLVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR}.${SHLIB_TEENY}
|
||||
.else
|
||||
SHLIB_FULLVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR}
|
||||
.endif
|
||||
.else
|
||||
SHLIB_FULLVERSION=${SHLIB_MAJOR}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
# add additional suffixes not exported.
|
||||
# .po is used for profiling object files.
|
||||
# .so is used for PIC object files.
|
||||
.SUFFIXES: .out .a .ln .so .po .o .s .S .c .cc .C .m .F .f .r .y .l .cl .p .h
|
||||
.SUFFIXES: .sh .m4 .m
|
||||
|
||||
|
||||
# Set PICFLAGS to cc flags for producing position-independent code,
|
||||
# if not already set. Includes -DPIC, if required.
|
||||
|
||||
# Data-driven table using make variables to control how shared libraries
|
||||
# are built for different platforms and object formats.
|
||||
# OBJECT_FMT: currently either "ELF" or "a.out", from <bsd.own.mk>
|
||||
# SHLIB_SOVERSION: version number to be compiled into a shared library
|
||||
# via -soname. Usualy ${SHLIB_MAJOR} on ELF.
|
||||
# NetBSD/pmax used to use ${SHLIB_MAJOR}[.${SHLIB_MINOR}
|
||||
# [.${SHLIB_TEENY}]]
|
||||
# SHLIB_SHFLAGS: Flags to tell ${LD} to emit shared library.
|
||||
# with ELF, also set shared-lib version for ld.so.
|
||||
# SHLIB_LDSTARTFILE: support .o file, call C++ file-level constructors
|
||||
# SHLIB_LDENDFILE: support .o file, call C++ file-level destructors
|
||||
# FPICFLAGS: flags for ${FC} to compile .[fF] files to .so objects.
|
||||
# CPPICFLAGS: flags for ${CPP} to preprocess .[sS] files for ${AS}
|
||||
# CPICFLAGS: flags for ${CC} to compile .[cC] files to .so objects.
|
||||
# CAPICFLAGS flags for {$CC} to compiling .[Ss] files
|
||||
# (usually just ${CPPPICFLAGS} ${CPICFLAGS})
|
||||
# APICFLAGS: flags for ${AS} to assemble .[sS] to .so objects.
|
||||
|
||||
.if ${MACHINE_ARCH} == "alpha"
|
||||
# Alpha-specific shared library flags
|
||||
FPICFLAGS ?= -fPIC
|
||||
CPICFLAGS ?= -fPIC -DPIC
|
||||
CPPPICFLAGS?= -DPIC
|
||||
CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
|
||||
APICFLAGS ?=
|
||||
.elif ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb"
|
||||
# mips-specific shared library flags
|
||||
|
||||
# On mips, all libs are compiled with ABIcalls, not just sharedlibs.
|
||||
MKPICLIB= no
|
||||
|
||||
# so turn shlib PIC flags on for ${AS}.
|
||||
AINC+=-DABICALLS
|
||||
AFLAGS+= -fPIC
|
||||
AS+= -KPIC
|
||||
|
||||
.elif ${MACHINE_ARCH} == "vax" && ${OBJECT_FMT} == "ELF"
|
||||
# On the VAX, all object are PIC by default, not just sharedlibs.
|
||||
MKPICLIB= no
|
||||
|
||||
.elif (${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64") && \
|
||||
${OBJECT_FMT} == "ELF"
|
||||
|
||||
FPICFLAGS ?= -fPIC
|
||||
CPICFLAGS ?= -fPIC -DPIC
|
||||
CPPPICFLAGS?= -DPIC
|
||||
CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
|
||||
APICFLAGS ?= -KPIC
|
||||
|
||||
.else
|
||||
|
||||
# Platform-independent flags for NetBSD a.out shared libraries (and PowerPC)
|
||||
SHLIB_LDSTARTFILE=
|
||||
SHLIB_LDENDFILE=
|
||||
SHLIB_SOVERSION=${SHLIB_FULLVERSION}
|
||||
SHLIB_SHFLAGS=
|
||||
FPICFLAGS ?= -fPIC
|
||||
CPICFLAGS?= -fPIC -DPIC
|
||||
CPPPICFLAGS?= -DPIC
|
||||
CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS}
|
||||
APICFLAGS?= -k
|
||||
|
||||
.endif
|
||||
|
||||
# Minix does not support shared libraries yet
|
||||
MKPICLIB?= no
|
||||
|
||||
# Platform-independent linker flags for ELF shared libraries
|
||||
.if ${OBJECT_FMT} == "ELF"
|
||||
SHLIB_SOVERSION= ${SHLIB_MAJOR}
|
||||
SHLIB_SHFLAGS= -soname lib${LIB}.so.${SHLIB_SOVERSION}
|
||||
SHLIB_LDSTARTFILE?= ${DESTDIR}/usr/lib/crtbeginS.o
|
||||
SHLIB_LDENDFILE?= ${DESTDIR}/usr/lib/crtendS.o
|
||||
.endif
|
||||
|
||||
CFLAGS+= ${COPTS}
|
||||
FFLAGS+= ${FOPTS}
|
||||
|
||||
.c.o:
|
||||
.if defined(COPTS) && !empty(COPTS:M*-g*)
|
||||
${COMPILE.c} ${.IMPSRC}
|
||||
.else
|
||||
@echo ${COMPILE.c:Q} ${.IMPSRC}
|
||||
@${COMPILE.c} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.c.po:
|
||||
.if defined(COPTS) && !empty(COPTS:M*-g*)
|
||||
${COMPILE.c} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.c:Q} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.c} -pg ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.c.so:
|
||||
.if defined(COPTS) && !empty(COPTS:M*-g*)
|
||||
${COMPILE.c} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.c:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.c} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.c.ln:
|
||||
${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC}
|
||||
|
||||
.cc.o .C.o:
|
||||
.if defined(COPTS) && !empty(COPTS:M*-g*)
|
||||
${COMPILE.cc} ${.IMPSRC}
|
||||
.else
|
||||
@echo ${COMPILE.cc:Q} ${.IMPSRC}
|
||||
@${COMPILE.cc} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.cc.po .C.po:
|
||||
.if defined(COPTS) && !empty(COPTS:M*-g*)
|
||||
${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.cc:Q} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.cc.so .C.so:
|
||||
.if defined(COPTS) && !empty(COPTS:M*-g*)
|
||||
${COMPILE.cc} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.cc:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.cc} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.f.o:
|
||||
.if defined(FOPTS) && !empty(FOPTS:M*-g*)
|
||||
${COMPILE.f} ${.IMPSRC}
|
||||
.else
|
||||
@echo ${COMPILE.f:Q} ${.IMPSRC}
|
||||
@${COMPILE.f} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.f.po:
|
||||
.if defined(FOPTS) && !empty(FOPTS:M*-g*)
|
||||
${COMPILE.f} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.f:Q} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.f} -pg ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.f.so:
|
||||
.if defined(FOPTS) && !empty(FOPTS:M*-g*)
|
||||
${COMPILE.f} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.f:Q} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.f} ${FPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.f.ln:
|
||||
${ECHO} Skipping lint for Fortran libraries.
|
||||
|
||||
.m.o:
|
||||
.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
|
||||
${COMPILE.m} ${.IMPSRC}
|
||||
.else
|
||||
@echo ${COMPILE.m:Q} ${.IMPSRC}
|
||||
@${COMPILE.m} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.m.po:
|
||||
.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
|
||||
${COMPILE.m} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.m:Q} -pg ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.m} -pg ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.m.so:
|
||||
.if defined(OBJCFLAGS) && !empty(OBJCFLAGS:M*-g*)
|
||||
${COMPILE.m} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
.else
|
||||
@echo ${COMPILE.m:Q} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.m} ${CPICFLAGS} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
.endif
|
||||
|
||||
.S.o .s.o:
|
||||
@echo ${COMPILE.S:Q} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC}
|
||||
@${COMPILE.S} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
|
||||
.S.po .s.po:
|
||||
@echo ${COMPILE.S:Q} -DGPROF -DPROF ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.S} -DGPROF -DPROF ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
|
||||
.S.so .s.so:
|
||||
@echo ${COMPILE.S:Q} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}
|
||||
@${COMPILE.S} ${CAPICFLAGS} ${CFLAGS:M-[ID]*} ${AINC} ${.IMPSRC} -o ${.TARGET}.o
|
||||
@${LD} -r ${.TARGET}.o -o ${.TARGET}
|
||||
@rm -f ${.TARGET}.o
|
||||
|
||||
.if ${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "") \
|
||||
|| ${MKLINKLIB} != "no"
|
||||
_LIBS=lib${LIB}.a
|
||||
.else
|
||||
_LIBS=
|
||||
.endif
|
||||
|
||||
OBJS+=${SRCS:N*.h:N*.sh:R:S/$/.o/g}
|
||||
|
||||
.if ${MKPROFILE} != "no"
|
||||
_LIBS+=lib${LIB}_p.a
|
||||
POBJS+=${OBJS:.o=.po}
|
||||
.endif
|
||||
|
||||
.if ${MKPIC} != "no"
|
||||
.if ${MKPICLIB} == "no"
|
||||
SOLIB=lib${LIB}.a
|
||||
.else
|
||||
SOLIB=lib${LIB}_pic.a
|
||||
_LIBS+=${SOLIB}
|
||||
SOBJS+=${OBJS:.o=.so}
|
||||
.endif
|
||||
.if defined(SHLIB_FULLVERSION)
|
||||
_LIBS+=lib${LIB}.so.${SHLIB_FULLVERSION}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
LOBJS+=${LSRCS:.c=.ln} ${SRCS:M*.c:.c=.ln}
|
||||
.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
|
||||
_LIBS+=llib-l${LIB}.ln
|
||||
.endif
|
||||
|
||||
.if ${MKPIC} == "no" || (defined(LDSTATIC) && ${LDSTATIC} != "") \
|
||||
|| ${MKLINKLIB} != "no"
|
||||
ALLOBJS=${OBJS} ${POBJS} ${SOBJS}
|
||||
.else
|
||||
ALLOBJS=${POBJS} ${SOBJS}
|
||||
.endif
|
||||
.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
|
||||
ALLOBJS+=${LOBJS}
|
||||
.endif
|
||||
.NOPATH: ${ALLOBJS} ${_LIBS}
|
||||
|
||||
realall: ${SRCS} ${ALLOBJS:O} ${_LIBS}
|
||||
|
||||
__archivebuild: .USE
|
||||
@rm -f ${.TARGET}
|
||||
${AR} cq ${.TARGET} ${.ALLSRC:M*o}
|
||||
${RANLIB} ${.TARGET}
|
||||
|
||||
__archiveinstall: .USE
|
||||
${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
|
||||
-g ${LIBGRP} -m 600 ${.ALLSRC} ${.TARGET}
|
||||
${RANLIB} -t ${.TARGET}
|
||||
chmod ${LIBMODE} ${.TARGET}
|
||||
|
||||
DPSRCS+= ${SRCS:M*.l:.l=.c} ${SRCS:M*.y:.y=.c}
|
||||
CLEANFILES+= ${DPSRCS}
|
||||
.if defined(YHEADER)
|
||||
CLEANFILES+= ${SRCS:M*.y:.y=.h}
|
||||
.endif
|
||||
|
||||
lib${LIB}.a:: ${OBJS} __archivebuild
|
||||
@echo building standard ${LIB} library
|
||||
|
||||
lib${LIB}_p.a:: ${POBJS} __archivebuild
|
||||
@echo building profiled ${LIB} library
|
||||
|
||||
lib${LIB}_pic.a:: ${SOBJS} __archivebuild
|
||||
@echo building shared object ${LIB} library
|
||||
|
||||
lib${LIB}.so.${SHLIB_FULLVERSION}: ${SOLIB} ${DPADD} \
|
||||
${SHLIB_LDSTARTFILE} ${SHLIB_LDENDFILE}
|
||||
@echo building shared ${LIB} library \(version ${SHLIB_FULLVERSION}\)
|
||||
@rm -f lib${LIB}.so.${SHLIB_FULLVERSION}
|
||||
.if defined(DESTDIR)
|
||||
$(LD) -nostdlib -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \
|
||||
${SHLIB_LDSTARTFILE} \
|
||||
--whole-archive ${SOLIB} \
|
||||
--no-whole-archive ${LDADD} \
|
||||
-L${DESTDIR}${LIBDIR} -R${LIBDIR} \
|
||||
${SHLIB_LDENDFILE}
|
||||
.else
|
||||
$(LD) -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \
|
||||
${SHLIB_LDSTARTFILE} \
|
||||
--whole-archive ${SOLIB} --no-whole-archive ${LDADD} \
|
||||
${SHLIB_LDENDFILE}
|
||||
.endif
|
||||
.if ${OBJECT_FMT} == "ELF"
|
||||
ln -sf lib${LIB}.so.${SHLIB_FULLVERSION} lib${LIB}.so.${SHLIB_MAJOR}.tmp
|
||||
mv -f lib${LIB}.so.${SHLIB_MAJOR}.tmp lib${LIB}.so.${SHLIB_MAJOR}
|
||||
ln -sf lib${LIB}.so.${SHLIB_FULLVERSION} lib${LIB}.so.tmp
|
||||
mv -f lib${LIB}.so.tmp lib${LIB}.so
|
||||
.endif
|
||||
|
||||
.if !empty(LOBJS)
|
||||
LLIBS?= -lc
|
||||
llib-l${LIB}.ln: ${LOBJS}
|
||||
@echo building llib-l${LIB}.ln
|
||||
@rm -f llib-l${LIB}.ln
|
||||
@${LINT} -C${LIB} ${.ALLSRC} ${LLIBS}
|
||||
.endif
|
||||
|
||||
cleanlib:
|
||||
rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES}
|
||||
rm -f lib${LIB}.a ${OBJS}
|
||||
rm -f lib${LIB}_p.a ${POBJS}
|
||||
rm -f lib${LIB}_pic.a lib${LIB}.so.* lib${LIB}.so ${SOBJS}
|
||||
rm -f llib-l${LIB}.ln ${LOBJS}
|
||||
|
||||
.if defined(SRCS)
|
||||
afterdepend: .depend
|
||||
@(TMP=/tmp/_depend$$$$; \
|
||||
sed -e 's/^\([^\.]*\).o[ ]*:/\1.o \1.po \1.so \1.ln:/' \
|
||||
< .depend > $$TMP; \
|
||||
mv $$TMP .depend)
|
||||
.endif
|
||||
|
||||
.if !target(libinstall)
|
||||
# Make sure it gets defined, in case MKPIC==no && MKLINKLIB==no
|
||||
libinstall::
|
||||
|
||||
.if ${MKLINKLIB} != "no"
|
||||
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.a
|
||||
.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}.a
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}.a
|
||||
.endif
|
||||
|
||||
.if !defined(BUILD) && !make(all) && !make(lib${LIB}.a)
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.a: .MADE
|
||||
.endif
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.a: lib${LIB}.a __archiveinstall
|
||||
.endif
|
||||
|
||||
.if ${MKPROFILE} != "no"
|
||||
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
|
||||
.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_p.a
|
||||
.endif
|
||||
|
||||
.if !defined(BUILD) && !make(all) && !make(lib${LIB}_p.a)
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}_p.a: .MADE
|
||||
.endif
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}_p.a: lib${LIB}_p.a __archiveinstall
|
||||
.endif
|
||||
|
||||
.if ${MKPIC} != "no" && ${MKPICINSTALL} != "no"
|
||||
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
|
||||
.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
|
||||
.endif
|
||||
|
||||
.if !defined(BUILD) && !make(all) && !make(lib${LIB}_pic.a)
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: .MADE
|
||||
.endif
|
||||
.if ${MKPICLIB} == "no"
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a:
|
||||
rm -f ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
|
||||
ln -s lib${LIB}.a ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a
|
||||
.else
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: lib${LIB}_pic.a __archiveinstall
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if ${MKPIC} != "no" && defined(SHLIB_FULLVERSION)
|
||||
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
|
||||
.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}
|
||||
.endif
|
||||
|
||||
.if !defined(BUILD) && !make(all) && !make(lib${LIB}.so.${SHLIB_FULLVERSION})
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}: .MADE
|
||||
.endif
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_FULLVERSION}: lib${LIB}.so.${SHLIB_FULLVERSION}
|
||||
${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
|
||||
-g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${.TARGET}
|
||||
.if ${OBJECT_FMT} == "a.out" && !defined(DESTDIR)
|
||||
/sbin/ldconfig -m ${LIBDIR}
|
||||
.endif
|
||||
.if ${OBJECT_FMT} == "ELF"
|
||||
ln -sf lib${LIB}.so.${SHLIB_FULLVERSION}\
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.tmp
|
||||
mv -f ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.tmp\
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}
|
||||
.if ${MKLINKLIB} != "no"
|
||||
ln -sf lib${LIB}.so.${SHLIB_FULLVERSION}\
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.so.tmp
|
||||
mv -f ${DESTDIR}${LIBDIR}/lib${LIB}.so.tmp\
|
||||
${DESTDIR}${LIBDIR}/lib${LIB}.so
|
||||
.endif
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS)
|
||||
libinstall:: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
|
||||
.PRECIOUS: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln
|
||||
.endif
|
||||
|
||||
.if !defined(BUILD) && !make(all) && !make(llib-l${LIB}.ln)
|
||||
${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln: .MADE
|
||||
.endif
|
||||
${DESTDIR}${LINTLIBDIR}/llib-l${LIB}.ln: llib-l${LIB}.ln
|
||||
${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} -o ${LIBOWN} \
|
||||
-g ${LIBGRP} -m ${LIBMODE} ${.ALLSRC} ${DESTDIR}${LINTLIBDIR}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
.include <bsd.man.mk>
|
||||
.include <bsd.nls.mk>
|
||||
.include <bsd.files.mk>
|
||||
.include <bsd.inc.mk>
|
||||
.include <bsd.links.mk>
|
||||
.include <bsd.dep.mk>
|
||||
.include <bsd.sys.mk>
|
||||
|
||||
# Make sure all of the standard targets are defined, even if they do nothing.
|
||||
lint regress:
|
@ -1,191 +0,0 @@
|
||||
# $NetBSD: Minix.bsd.man.mk,v 1.1 2011/11/06 21:01:30 tcort Exp $
|
||||
# @(#)bsd.man.mk 8.1 (Berkeley) 6/8/93
|
||||
|
||||
.if !target(__initialized__)
|
||||
__initialized__:
|
||||
.if exists(${.CURDIR}/../Makefile.inc)
|
||||
.include "${.CURDIR}/../Makefile.inc"
|
||||
.endif
|
||||
.include <bsd.own.mk>
|
||||
.include <bsd.obj.mk>
|
||||
.include <bsd.depall.mk>
|
||||
.MAIN: all
|
||||
.endif
|
||||
|
||||
.PHONY: catinstall maninstall catpages manpages catlinks manlinks cleanman html installhtml cleanhtml
|
||||
.if ${MKMAN} != "no"
|
||||
realinstall: ${MANINSTALL}
|
||||
.endif
|
||||
cleandir: cleanman
|
||||
|
||||
HTMLDIR?= ${DESTDIR}/usr/share/man
|
||||
MANTARGET?= cat
|
||||
MANDOC?= mandoc -Tascii
|
||||
TBL?= tbl
|
||||
|
||||
.SUFFIXES: .1 .2 .3 .4 .5 .6 .7 .8 .9 \
|
||||
.cat1 .cat2 .cat3 .cat4 .cat5 .cat6 .cat7 .cat8 .cat9 \
|
||||
.html1 .html2 .html3 .html4 .html5 .html6 .html7 .html8 .html9
|
||||
|
||||
.9.cat9 .8.cat8 .7.cat7 .6.cat6 .5.cat5 .4.cat4 .3.cat3 .2.cat2 .1.cat1:
|
||||
.if !defined(USETBL)
|
||||
@echo "${MANDOC} ${.IMPSRC} > ${.TARGET}"
|
||||
${MANDOC} ${.IMPSRC} > ${.TARGET} || \
|
||||
(rm -f ${.TARGET}; false)
|
||||
.else
|
||||
@echo "${TBL} ${.IMPSRC} | ${MANDOC} > ${.TARGET}"
|
||||
@${TBL} ${.IMPSRC} | ${MANDOC} > ${.TARGET} || \
|
||||
(rm -f ${.TARGET}; false)
|
||||
.endif
|
||||
|
||||
.9.html9 .8.html8 .7.html7 .6.html6 .5.html5 .4.html4 .3.html3 .2.html2 .1.html1:
|
||||
.if !defined(USETBL)
|
||||
@echo "${MANDOC} -Thtml ${.IMPSRC} > ${.TARGET}"
|
||||
@${MANDOC} -Thtml ${.IMPSRC} > ${.TARGET} || \
|
||||
(rm -f ${.TARGET}; false)
|
||||
.else
|
||||
@echo "${TBL} ${.IMPSRC} | ${MANDOC} -Thtml > ${.TARGET}"
|
||||
@cat ${.IMPSRC} | ${MANDOC} -Thtml > ${.TARGET} || \
|
||||
(rm -f ${.TARGET}; false)
|
||||
.endif
|
||||
|
||||
.if defined(MAN) && !empty(MAN)
|
||||
MANPAGES= ${MAN}
|
||||
CATPAGES= ${MANPAGES:C/(.*).([1-9])/\1.cat\2/}
|
||||
.NOPATH: ${CATPAGES}
|
||||
.if !defined(NOHTML)
|
||||
HTMLPAGES= ${MANPAGES:C/(.*).([1-9])/\1.html\2/}
|
||||
.endif
|
||||
.endif
|
||||
|
||||
MINSTALL= ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} ${INSTPRIV} \
|
||||
-o ${MANOWN} -g ${MANGRP} -m ${MANMODE}
|
||||
|
||||
.if defined(MANZ)
|
||||
# chown and chmod are done afterward automatically
|
||||
MCOMPRESS= gzip -cf
|
||||
MCOMPRESSSUFFIX= .gz
|
||||
.endif
|
||||
|
||||
catinstall: catlinks
|
||||
maninstall: manlinks
|
||||
|
||||
__installpage: .USE
|
||||
.if defined(MCOMPRESS) && !empty(MCOMPRESS)
|
||||
@rm -f ${.TARGET}
|
||||
${MCOMPRESS} ${.ALLSRC} > ${.TARGET}
|
||||
@chown ${MANOWN}:${MANGRP} ${.TARGET}
|
||||
@chmod ${MANMODE} ${.TARGET}
|
||||
.else
|
||||
@cmp -s ${.ALLSRC} ${.TARGET} > /dev/null 2>&1 || \
|
||||
(echo "${MINSTALL} ${.ALLSRC} ${.TARGET}" && \
|
||||
${MINSTALL} ${.ALLSRC} ${.TARGET})
|
||||
.endif
|
||||
|
||||
# Rules for cat'ed man page installation
|
||||
.if defined(CATPAGES) && !empty(CATPAGES) && ${MKCATPAGES} != "no"
|
||||
catpages:: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
|
||||
.PRECIOUS: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${CATPAGES:@P@${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}@}
|
||||
.endif
|
||||
|
||||
. for P in ${CATPAGES:O:u}
|
||||
. if !defined(BUILD) && !make(all) && !make(${P})
|
||||
${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}: .MADE
|
||||
. endif
|
||||
${DESTDIR}${MANDIR}/${P:T:E}${MANSUBDIR}/${P:T:R}.0${MCOMPRESSSUFFIX}: ${P} __installpage
|
||||
. endfor
|
||||
.else
|
||||
catpages::
|
||||
.endif
|
||||
|
||||
# Rules for source page installation
|
||||
.if defined(MANPAGES) && !empty(MANPAGES)
|
||||
manpages:: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
|
||||
.PRECIOUS: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
|
||||
.if !defined(UPDATE)
|
||||
.PHONY: ${MANPAGES:@P@${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}@}
|
||||
.endif
|
||||
|
||||
. for P in ${MANPAGES:O:u}
|
||||
${DESTDIR}${MANDIR}/man${P:T:E}${MANSUBDIR}/${P}${MCOMPRESSSUFFIX}: ${P} __installpage
|
||||
. endfor
|
||||
.else
|
||||
manpages::
|
||||
.endif
|
||||
|
||||
.if ${MKCATPAGES} != "no"
|
||||
catlinks: catpages
|
||||
.if defined(MLINKS) && !empty(MLINKS)
|
||||
@set ${MLINKS}; \
|
||||
while test $$# -ge 2; do \
|
||||
name=$$1; \
|
||||
shift; \
|
||||
dir=${DESTDIR}${MANDIR}/cat$${name##*.}; \
|
||||
l=$${dir}${MANSUBDIR}/$${name%.*}.0${MCOMPRESSSUFFIX}; \
|
||||
name=$$1; \
|
||||
shift; \
|
||||
dir=${DESTDIR}${MANDIR}/cat$${name##*.}; \
|
||||
t=$${dir}${MANSUBDIR}/$${name%.*}.0${MCOMPRESSSUFFIX}; \
|
||||
if test $$l -nt $$t -o ! -f $$t; then \
|
||||
echo $$t -\> $$l; \
|
||||
ln -f $$l $$t; \
|
||||
fi; \
|
||||
done
|
||||
.endif
|
||||
.else
|
||||
catlinks:
|
||||
.endif
|
||||
|
||||
manlinks: manpages
|
||||
.if defined(MLINKS) && !empty(MLINKS)
|
||||
@set ${MLINKS}; \
|
||||
while test $$# -ge 2; do \
|
||||
name=$$1; \
|
||||
shift; \
|
||||
dir=${DESTDIR}${MANDIR}/man$${name##*.}; \
|
||||
l=$${dir}${MANSUBDIR}/$${name}${MCOMPRESSSUFFIX}; \
|
||||
name=$$1; \
|
||||
shift; \
|
||||
dir=${DESTDIR}${MANDIR}/man$${name##*.}; \
|
||||
t=$${dir}${MANSUBDIR}/$${name}${MCOMPRESSSUFFIX}; \
|
||||
if test $$l -nt $$t -o ! -f $$t; then \
|
||||
echo $$t -\> $$l; \
|
||||
ln -f $$l $$t; \
|
||||
fi; \
|
||||
done
|
||||
.endif
|
||||
|
||||
# Html rules
|
||||
html: ${HTMLPAGES}
|
||||
|
||||
.if defined(HTMLPAGES) && !empty(HTMLPAGES)
|
||||
.for P in ${HTMLPAGES:O:u}
|
||||
${HTMLDIR}/${P:T:E}/${P:T:R}.html: ${P}
|
||||
${MINSTALL} ${.ALLSRC} ${.TARGET}
|
||||
.endfor
|
||||
.endif
|
||||
installhtml: ${HTMLPAGES:@P@${HTMLDIR}/${P:T:E}/${P:T:R}.html@}
|
||||
|
||||
cleanhtml:
|
||||
.if defined(HTMLPAGES) && !empty(HTMLPAGES)
|
||||
rm -f ${HTMLPAGES}
|
||||
.endif
|
||||
|
||||
|
||||
.if defined(CATPAGES)
|
||||
.if ${MKCATPAGES} != "no" && ${MKMAN} != "no"
|
||||
realall: ${CATPAGES}
|
||||
.else
|
||||
realall:
|
||||
.endif
|
||||
|
||||
cleanman:
|
||||
rm -f ${CATPAGES}
|
||||
.else
|
||||
cleanman:
|
||||
.endif
|
||||
|
||||
# Make sure all of the standard targets are defined, even if they do nothing.
|
||||
clean depend includes lint regress tags:
|
@ -1,286 +0,0 @@
|
||||
# $NetBSD: Minix.bsd.own.mk.in,v 1.1 2011/11/06 21:01:30 tcort Exp $
|
||||
|
||||
.if !defined(_BSD_OWN_MK_)
|
||||
_BSD_OWN_MK_=1
|
||||
|
||||
.if defined(MAKECONF) && exists(${MAKECONF})
|
||||
.include "${MAKECONF}"
|
||||
.elif exists(@SYSCONFDIR@/mk.conf)
|
||||
.include "@SYSCONFDIR@/mk.conf"
|
||||
.elif exists(/etc/mk.conf)
|
||||
.include "/etc/mk.conf"
|
||||
.endif
|
||||
|
||||
# Defining `SKEY' causes support for S/key authentication to be compiled in.
|
||||
SKEY= yes
|
||||
|
||||
# where the system object and source trees are kept; can be configurable
|
||||
# by the user in case they want them in ~/foosrc and ~/fooobj, for example
|
||||
BSDSRCDIR?= /usr/src
|
||||
BSDOBJDIR?= /usr/obj
|
||||
|
||||
BINGRP?= @ROOT_GROUP@
|
||||
BINOWN?= @ROOT_USER@
|
||||
BINMODE?= 555
|
||||
NONBINMODE?= 444
|
||||
|
||||
# Define MANZ to have the man pages compressed (gzip)
|
||||
#MANZ= 1
|
||||
|
||||
MANDIR?= /usr/share/man
|
||||
MANGRP?= @ROOT_GROUP@
|
||||
MANOWN?= @ROOT_USER@
|
||||
MANMODE?= ${NONBINMODE}
|
||||
MANINSTALL?= maninstall catinstall
|
||||
|
||||
INFODIR?= /usr/share/info
|
||||
INFOGRP?= @ROOT_GROUP@
|
||||
INFOOWN?= @ROOT_USER@
|
||||
INFOMODE?= ${NONBINMODE}
|
||||
|
||||
LIBDIR?= /usr/lib
|
||||
LINTLIBDIR?= /usr/libdata/lint
|
||||
LIBGRP?= ${BINGRP}
|
||||
LIBOWN?= ${BINOWN}
|
||||
LIBMODE?= ${NONBINMODE}
|
||||
|
||||
DOCDIR?= /usr/share/doc
|
||||
HTMLDOCDIR?= /usr/share/doc/html
|
||||
DOCGRP?= @ROOT_GROUP@
|
||||
DOCOWN?= @ROOT_USER@
|
||||
DOCMODE?= ${NONBINMODE}
|
||||
|
||||
NLSDIR?= /usr/share/nls
|
||||
NLSGRP?= @ROOT_GROUP@
|
||||
NLSOWN?= @ROOT_USER@
|
||||
NLSMODE?= ${NONBINMODE}
|
||||
|
||||
KMODDIR?= /usr/lkm
|
||||
KMODGRP?= @ROOT_GROUP@
|
||||
KMODOWN?= @ROOT_USER@
|
||||
KMODMODE?= ${NONBINMODE}
|
||||
|
||||
LOCALEDIR?= /usr/share/locale
|
||||
LOCALEGRP?= @ROOT_GROUP@
|
||||
LOCALEOWN?= @ROOT_USER@
|
||||
LOCALEMODE?= ${NONBINMODE}
|
||||
|
||||
COPY?= -c
|
||||
.if defined(UPDATE)
|
||||
PRESERVE?= -p
|
||||
.else
|
||||
PRESERVE?=
|
||||
.endif
|
||||
.if defined(UNPRIVILEGED)
|
||||
INSTPRIV?= -U
|
||||
.endif
|
||||
STRIPFLAG?= -s
|
||||
|
||||
# Define SYS_INCLUDE to indicate whether you want symbolic links to the system
|
||||
# source (``symlinks''), or a separate copy (``copies''); (latter useful
|
||||
# in environments where it's not possible to keep /sys publicly readable)
|
||||
#SYS_INCLUDE= symlinks
|
||||
|
||||
# The sh3 port is incomplete.
|
||||
.if ${MACHINE_ARCH} == "sh3eb" || ${MACHINE_ARCH} == "sh3el"
|
||||
NOLINT=1
|
||||
NOPROFILE=1
|
||||
OBJECT_FMT?=COFF
|
||||
NOPIC?=1
|
||||
.endif
|
||||
|
||||
# The sparc64 port is incomplete.
|
||||
# Profiling and linting is also off on the x86_64 port at the moment.
|
||||
.if ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "x86_64"
|
||||
NOPROFILE=1
|
||||
NOLINT=1
|
||||
.endif
|
||||
|
||||
# The m68000 port is incomplete.
|
||||
.if ${MACHINE_ARCH} == "m68000"
|
||||
NOLINT=1
|
||||
NOPROFILE=1
|
||||
NOPIC?=1
|
||||
.endif
|
||||
|
||||
# Data-driven table using make variables to control how
|
||||
# toolchain-dependent targets and shared libraries are built
|
||||
# for different platforms and object formats.
|
||||
# OBJECT_FMT: currently either "ELF" or "a.out".
|
||||
# SHLIB_TYPE: "ELF" or "a.out" or "" to force static libraries.
|
||||
#
|
||||
OBJECT_FMT?=a.out
|
||||
|
||||
.if ${CC:M*gcc*} != ""
|
||||
.if ${MACHINE_ARCH} == "x86_64"
|
||||
CFLAGS+=-Wno-format -fno-builtin
|
||||
.endif
|
||||
.endif
|
||||
|
||||
# Location of the file that contains the major and minor numbers of the
|
||||
# version of a shared library. If this file exists a shared library
|
||||
# will be built by <bsd.lib.mk>.
|
||||
SHLIB_VERSION_FILE?= ${.CURDIR}/shlib_version
|
||||
|
||||
# GNU sources and packages sometimes see architecture names differently.
|
||||
# This table maps an architecture name to its GNU counterpart.
|
||||
# Use as so: ${GNU_ARCH.${TARGET_ARCH}} or ${MACHINE_GNU_ARCH}
|
||||
.ifndef MACHINE_GNU_ARCH
|
||||
GNU_ARCH.alpha=alpha
|
||||
GNU_ARCH.arm26=arm
|
||||
GNU_ARCH.arm32=arm
|
||||
GNU_ARCH.arm=arm
|
||||
GNU_ARCH.i386=i386
|
||||
GNU_ARCH.m68k=m68k
|
||||
GNU_ARCH.mipseb=mipseb
|
||||
GNU_ARCH.mipsel=mipsel
|
||||
GNU_ARCH.ns32k=ns32k
|
||||
GNU_ARCH.powerpc=powerpc
|
||||
GNU_ARCH.sh3eb=sh
|
||||
GNU_ARCH.sh3el=sh
|
||||
GNU_ARCH.sparc=sparc
|
||||
GNU_ARCH.sparc64=sparc64
|
||||
GNU_ARCH.vax=vax
|
||||
MACHINE_GNU_ARCH=${GNU_ARCH.${MACHINE_ARCH}}
|
||||
.endif
|
||||
|
||||
# CPU model, derived from MACHINE_ARCH
|
||||
MACHINE_CPU= ${MACHINE_ARCH:C/mipse[bl]/mips/:S/arm26/arm/:S/arm32/arm/:C/sh3e[bl]/sh3/:S/m68000/m68k/}
|
||||
|
||||
TARGETS+= all clean cleandir depend dependall includes \
|
||||
install lint obj regress tags html installhtml cleanhtml
|
||||
.PHONY: all clean cleandir depend dependall distclean includes \
|
||||
install lint obj regress tags beforedepend afterdepend \
|
||||
beforeinstall afterinstall realinstall realdepend realall \
|
||||
html installhtml cheanhtml
|
||||
|
||||
# set NEED_OWN_INSTALL_TARGET, if it's not already set, to yes
|
||||
# this is used by bsd.pkg.mk to stop "install" being defined
|
||||
NEED_OWN_INSTALL_TARGET?= yes
|
||||
|
||||
.if ${NEED_OWN_INSTALL_TARGET} == "yes"
|
||||
.if !target(install)
|
||||
install: .NOTMAIN beforeinstall subdir-install realinstall afterinstall
|
||||
beforeinstall: .NOTMAIN
|
||||
subdir-install: .NOTMAIN beforeinstall
|
||||
realinstall: .NOTMAIN beforeinstall
|
||||
afterinstall: .NOTMAIN subdir-install realinstall
|
||||
.endif
|
||||
all: .NOTMAIN realall subdir-all
|
||||
subdir-all: .NOTMAIN
|
||||
realall: .NOTMAIN
|
||||
depend: .NOTMAIN realdepend subdir-depend
|
||||
subdir-depend: .NOTMAIN
|
||||
realdepend: .NOTMAIN
|
||||
distclean: .NOTMAIN cleandir
|
||||
.endif
|
||||
|
||||
PRINTOBJDIR= printf "xxx: .MAKE\n\t@echo \$${.OBJDIR}\n" | ${MAKE} -B -s -f-
|
||||
|
||||
# Define MKxxx variables (which are either yes or no) for users
|
||||
# to set in /etc/mk.conf and override on the make commandline.
|
||||
# These should be tested with `== "no"' or `!= "no"'.
|
||||
# The NOxxx variables should only be used by Makefiles.
|
||||
#
|
||||
|
||||
MKCATPAGES?=yes
|
||||
|
||||
.if defined(NODOC)
|
||||
MKDOC=no
|
||||
#.elif !defined(MKDOC)
|
||||
#MKDOC=yes
|
||||
.else
|
||||
MKDOC?=yes
|
||||
.endif
|
||||
|
||||
MKINFO?=yes
|
||||
|
||||
.if defined(NOLINKLIB)
|
||||
MKLINKLIB=no
|
||||
.else
|
||||
MKLINKLIB?=yes
|
||||
.endif
|
||||
.if ${MKLINKLIB} == "no"
|
||||
MKPICINSTALL=no
|
||||
MKPROFILE=no
|
||||
.endif
|
||||
|
||||
MKLINT?=no
|
||||
|
||||
.if defined(NOMAN)
|
||||
MKMAN=no
|
||||
.else
|
||||
MKMAN?=yes
|
||||
.endif
|
||||
.if ${MKMAN} == "no"
|
||||
MKCATPAGES=no
|
||||
.endif
|
||||
|
||||
.if defined(NONLS)
|
||||
MKNLS=no
|
||||
.else
|
||||
MKNLS?=yes
|
||||
.endif
|
||||
|
||||
#
|
||||
# MKOBJDIRS controls whether object dirs are created during "make build".
|
||||
# MKOBJ controls whether the "make obj" rule does anything.
|
||||
#
|
||||
.if defined(NOOBJ)
|
||||
MKOBJ=no
|
||||
MKOBJDIRS=no
|
||||
.else
|
||||
MKOBJ?=yes
|
||||
MKOBJDIRS?=no
|
||||
.endif
|
||||
|
||||
.if defined(NOPIC)
|
||||
MKPIC=no
|
||||
.else
|
||||
MKPIC?=yes
|
||||
.endif
|
||||
|
||||
.if defined(NOPICINSTALL)
|
||||
MKPICINSTALL=no
|
||||
.else
|
||||
MKPICINSTALL?=yes
|
||||
.endif
|
||||
|
||||
.if defined(NOPROFILE)
|
||||
MKPROFILE=no
|
||||
.else
|
||||
MKPROFILE?=yes
|
||||
.endif
|
||||
|
||||
.if defined(NOSHARE)
|
||||
MKSHARE=no
|
||||
.else
|
||||
MKSHARE?=yes
|
||||
.endif
|
||||
.if ${MKSHARE} == "no"
|
||||
MKCATPAGES=no
|
||||
MKDOC=no
|
||||
MKINFO=no
|
||||
MKMAN=no
|
||||
MKNLS=no
|
||||
.endif
|
||||
|
||||
.if defined(NOCRYPTO)
|
||||
MKCRYPTO=no
|
||||
.else
|
||||
MKCRYPTO?=yes
|
||||
.endif
|
||||
|
||||
MKCRYPTO_IDEA?=no
|
||||
|
||||
MKCRYPTO_RC5?=no
|
||||
|
||||
.if defined(NOKERBEROS) || (${MKCRYPTO} == "no")
|
||||
MKKERBEROS=no
|
||||
.else
|
||||
MKKERBEROS?=yes
|
||||
.endif
|
||||
|
||||
MKSOFTFLOAT?=no
|
||||
|
||||
.endif # _BSD_OWN_MK_
|
@ -1,193 +0,0 @@
|
||||
# $NetBSD: Minix.sys.mk,v 1.4 2016/09/08 14:28:12 joerg Exp $
|
||||
# @(#)sys.mk 8.2 (Berkeley) 3/21/94
|
||||
|
||||
unix?= We run Unix.
|
||||
OS?= Minix
|
||||
|
||||
.SUFFIXES: .out .a .ln .o .s .S .c .cc .cpp .cxx .C .F .f .r .y .l .cl .p .h
|
||||
.SUFFIXES: .sh .m4
|
||||
|
||||
.LIBS: .a
|
||||
|
||||
AR?= ar
|
||||
ARFLAGS?= rl
|
||||
RANLIB?= ranlib
|
||||
|
||||
AS?= gas
|
||||
AFLAGS?=
|
||||
COMPILE.s?= ${CC} ${AFLAGS} -c
|
||||
LINK.s?= ${CC} ${AFLAGS} ${LDFLAGS}
|
||||
COMPILE.S?= ${CC} ${AFLAGS} ${CPPFLAGS} -c -traditional-cpp
|
||||
LINK.S?= ${CC} ${AFLAGS} ${CPPFLAGS} ${LDFLAGS}
|
||||
|
||||
CC?= gcc
|
||||
DBG?= -O2
|
||||
CFLAGS?= ${DBG}
|
||||
COMPILE.c?= ${CC} ${CFLAGS} ${CPPFLAGS} -c
|
||||
LINK.c?= ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}
|
||||
|
||||
CXX?= g++
|
||||
CXXFLAGS?= ${CFLAGS}
|
||||
COMPILE.cc?= ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c
|
||||
LINK.cc?= ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${LDFLAGS}
|
||||
|
||||
OBJC?= ${CC}
|
||||
OBJCFLAGS?= ${CFLAGS}
|
||||
COMPILE.m?= ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c
|
||||
LINK.m?= ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} ${LDFLAGS}
|
||||
|
||||
CPP?= cpp
|
||||
NOLINT= 1
|
||||
CPPFLAGS?=
|
||||
|
||||
FC?= f77
|
||||
FFLAGS?= -O
|
||||
RFLAGS?=
|
||||
COMPILE.f?= ${FC} ${FFLAGS} -c
|
||||
LINK.f?= ${FC} ${FFLAGS} ${LDFLAGS}
|
||||
COMPILE.F?= ${FC} ${FFLAGS} ${CPPFLAGS} -c
|
||||
LINK.F?= ${FC} ${FFLAGS} ${CPPFLAGS} ${LDFLAGS}
|
||||
COMPILE.r?= ${FC} ${FFLAGS} ${RFLAGS} -c
|
||||
LINK.r?= ${FC} ${FFLAGS} ${RFLAGS} ${LDFLAGS}
|
||||
|
||||
INSTALL?= install
|
||||
|
||||
LEX?= lex
|
||||
LFLAGS?=
|
||||
LEX.l?= ${LEX} ${LFLAGS}
|
||||
|
||||
LD?= ld
|
||||
LDFLAGS?=
|
||||
|
||||
LINT?= lint
|
||||
LINTFLAGS?= -chapbxzF
|
||||
|
||||
LORDER?= echo
|
||||
|
||||
MAKE?= make
|
||||
|
||||
NM?= nm
|
||||
|
||||
PC?= pc
|
||||
PFLAGS?=
|
||||
COMPILE.p?= ${PC} ${PFLAGS} ${CPPFLAGS} -c
|
||||
LINK.p?= ${PC} ${PFLAGS} ${CPPFLAGS} ${LDFLAGS}
|
||||
|
||||
SHELL?= sh
|
||||
|
||||
SIZE?= size
|
||||
|
||||
TSORT?= tsort
|
||||
|
||||
YACC?= yacc
|
||||
YFLAGS?=
|
||||
YACC.y?= ${YACC} ${YFLAGS}
|
||||
|
||||
# C
|
||||
.c:
|
||||
${LINK.c} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.c.o:
|
||||
${COMPILE.c} ${.IMPSRC}
|
||||
.c.a:
|
||||
${COMPILE.c} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
.c.ln:
|
||||
${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC}
|
||||
|
||||
# C++
|
||||
.cc .cpp .cxx .C:
|
||||
${LINK.cc} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.cc.o .cpp.o .cxx.o .C.o:
|
||||
${COMPILE.cc} ${.IMPSRC}
|
||||
.cc.a .cpp.a .cxx.a .C.a:
|
||||
${COMPILE.cc} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
|
||||
# Fortran/Ratfor
|
||||
.f:
|
||||
${LINK.f} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.f.o:
|
||||
${COMPILE.f} ${.IMPSRC}
|
||||
.f.a:
|
||||
${COMPILE.f} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
|
||||
.F:
|
||||
${LINK.F} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.F.o:
|
||||
${COMPILE.F} ${.IMPSRC}
|
||||
.F.a:
|
||||
${COMPILE.F} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
|
||||
.r:
|
||||
${LINK.r} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.r.o:
|
||||
${COMPILE.r} ${.IMPSRC}
|
||||
.r.a:
|
||||
${COMPILE.r} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
|
||||
# Pascal
|
||||
.p:
|
||||
${LINK.p} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.p.o:
|
||||
${COMPILE.p} ${.IMPSRC}
|
||||
.p.a:
|
||||
${COMPILE.p} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
|
||||
# Assembly
|
||||
.s:
|
||||
${LINK.s} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.s.o:
|
||||
${COMPILE.s} ${.IMPSRC}
|
||||
.s.a:
|
||||
${COMPILE.s} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
.S:
|
||||
${LINK.S} -o ${.TARGET} ${.IMPSRC} ${LDLIBS}
|
||||
.S.o:
|
||||
${COMPILE.S} ${.IMPSRC}
|
||||
.S.a:
|
||||
${COMPILE.S} ${.IMPSRC}
|
||||
${AR} ${ARFLAGS} $@ $*.o
|
||||
rm -f $*.o
|
||||
|
||||
# Lex
|
||||
.l:
|
||||
${LEX.l} ${.IMPSRC}
|
||||
${LINK.c} -o ${.TARGET} lex.yy.c ${LDLIBS} -ll
|
||||
rm -f lex.yy.c
|
||||
.l.c:
|
||||
${LEX.l} ${.IMPSRC}
|
||||
mv lex.yy.c ${.TARGET}
|
||||
.l.o:
|
||||
${LEX.l} ${.IMPSRC}
|
||||
${COMPILE.c} -o ${.TARGET} lex.yy.c
|
||||
rm -f lex.yy.c
|
||||
|
||||
# Yacc
|
||||
.y:
|
||||
${YACC.y} ${.IMPSRC}
|
||||
${LINK.c} -o ${.TARGET} y.tab.c ${LDLIBS}
|
||||
rm -f y.tab.c
|
||||
.y.c:
|
||||
${YACC.y} ${.IMPSRC}
|
||||
mv y.tab.c ${.TARGET}
|
||||
.y.o:
|
||||
${YACC.y} ${.IMPSRC}
|
||||
${COMPILE.c} -o ${.TARGET} y.tab.c
|
||||
rm -f y.tab.c
|
||||
|
||||
# Shell
|
||||
.sh:
|
||||
rm -f ${.TARGET}
|
||||
cp ${.IMPSRC} ${.TARGET}
|
Loading…
x
Reference in New Issue
Block a user