add pkgsrc hooks for building pkgs w/nbsd_libc
Add two makefiles to manage compiling packages with NetBSD libc. * minix.libc.mk contains the proper CFLAGS/LDFLAGS * pkgsrchooks.mk contains the logic for setting the flags. * update bmake Several pkg-config files were added to help pkgsrc learn about the c, minlib, and compat_minix libraries.
This commit is contained in:
+3
-3
@@ -5,10 +5,10 @@ NOOBJ= # defined
|
||||
.if ${MKSHARE} != "no"
|
||||
FILES= bsd.ack.mk bsd.dep.mk bsd.files.mk \
|
||||
bsd.gcc.mk bsd.inc.mk \
|
||||
bsd.init.mk bsd.kinc.mk bsd.klinks.mk \
|
||||
bsd.lib.mk bsd.links.mk bsd.man.mk bsd.obj.mk bsd.own.mk \
|
||||
bsd.init.mk bsd.kinc.mk bsd.klinks.mk bsd.lib.mk \
|
||||
bsd.links.mk bsd.man.mk bsd.obj.mk bsd.own.mk \
|
||||
bsd.prog.mk bsd.subdir.mk bsd.sys.mk bsd.gcov.mk \
|
||||
sys.mk
|
||||
minix.libc.mk pkgsrchooks.mk sys.mk
|
||||
|
||||
# MINIX-specific files
|
||||
FILES+= minix.bootprog.mk
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
# NetBSD libc flags go here
|
||||
NETBSD_LIBC_CPPFLAGS=-nostdinc -D__NBSD_LIBC -isystem /usr/netbsd/include
|
||||
NETBSD_LIBC_LDFLAGS=-nostdlib /usr/netbsd/lib/crt1.o /usr/netbsd/lib/crti.o /usr/netbsd/lib/crtn.o -L/usr/netbsd/lib -lc -L/usr/pkg/lib -lgcc -L/usr/netbsd/lib -lminlib -lcompat_minix
|
||||
|
||||
# Minix libc flags go here
|
||||
MINIX_LIBC_CPPFLAGS=
|
||||
MINIX_LIBC_LDFLAGS=
|
||||
@@ -0,0 +1,36 @@
|
||||
#
|
||||
|
||||
.if !defined(_MINIX_PKGSRC_HOOKS_)
|
||||
_MINIX_PKGSRC_HOOKS_=1
|
||||
|
||||
# Get PKGS_REQUIRING_MINIX_LIBC
|
||||
.include "/usr/pkgsrc/minix/pkgs_requiring_minix_libc.mk"
|
||||
|
||||
# Get MINIX_LIBC_* and NETBSD_LIBC_*
|
||||
.include "/usr/share/mk/minix.libc.mk"
|
||||
|
||||
# Build everything not in PKGS_REQUIRING_MINIX_LIBC with NetBSD libc
|
||||
PKG_REQUIRES_MINIX_LIBC=no
|
||||
|
||||
# Search PKGS_REQUIRING_MINIX_LIBC to see if it needs Minix libc
|
||||
.for PKG_REQUIRING_MINIX_LIBC in ${PKGS_REQUIRING_MINIX_LIBC}
|
||||
.if "${PKG_REQUIRING_MINIX_LIBC}" == "${CATEGORIES}/${PKGBASE}"
|
||||
PKG_REQUIRES_MINIX_LIBC=yes
|
||||
.endif
|
||||
.endfor
|
||||
|
||||
# Set the proper compilation flags
|
||||
.if ${PKG_REQUIRES_MINIX_LIBC} == yes
|
||||
CPPFLAGS+= ${MINIX_LIBC_CPPFLAGS}
|
||||
LDFLAGS+= ${MINIX_LIBC_LDFLAGS}
|
||||
.else
|
||||
SED=/bin/sed
|
||||
.include "/usr/pkgsrc/mk/nbsd_libc.buildlink3.mk"
|
||||
PREFER_NATIVE+=minlib
|
||||
PREFER_NATIVE+=compat_minix
|
||||
PREFER_NATIVE+=nbsd_libc
|
||||
CPPFLAGS+= ${NETBSD_LIBC_CPPFLAGS}
|
||||
LDFLAGS+= ${NETBSD_LIBC_LDFLAGS}
|
||||
.endif
|
||||
|
||||
.endif # !defined(_MINIX_PKGSRC_HOOKS_)
|
||||
Reference in New Issue
Block a user