From 64853c4916945ad760f06c27c363a201c1643271 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Wed, 19 Mar 2008 15:22:20 +0000 Subject: Rejig the build system a little so we have per ok defs per system. Probably easier in the long run. --- mk/lib.mk | 1 + mk/os.mk | 24 +++++------------------- mk/prog.mk | 3 ++- mk/sys.mk | 2 +- src/libeinfo/Makefile | 6 ++---- src/librc/Makefile | 6 ++---- src/rc/Makefile | 3 +-- 7 files changed, 14 insertions(+), 31 deletions(-) diff --git a/mk/lib.mk b/mk/lib.mk index a649c2ca..fb509554 100644 --- a/mk/lib.mk +++ b/mk/lib.mk @@ -51,5 +51,6 @@ clean: rm -f ${OBJS} ${SOBJS} ${_LIBS} ${SHLIB_LINK} ${CLEANFILES} include ${MK}/sys.mk +include ${MK}/os.mk include ${MK}/depend.mk include ${MK}/gitignore.mk diff --git a/mk/os.mk b/mk/os.mk index f49ed6c2..7b395cd8 100644 --- a/mk/os.mk +++ b/mk/os.mk @@ -5,28 +5,10 @@ _OS_SH= uname -s _OS!= ${_OS_SH} OS?= ${_OS}$(shell ${_OS_SH}) - -_SUBOS_SH= case `uname -s` in \ - *BSD|DragonFly) echo "BSD";; \ - *) uname -s;; \ - esac -_SUBOS!= ${_SUBOS_SH} -SUBOS?= ${_SUBOS}$(shell ${_SUBOS_SH}) +include ${MK}/os-${OS}.mk RC_LIB= /$(LIBNAME)/rc -_DEF_SH= case `uname -s` in Linux) echo "-D_BSD_SOURCE -D_XOPEN_SOURCE=600";; *) echo;; esac -_DEF!= ${_DEF_SH} -CFLAGS+= ${_DEF}$(shell ${_DEF_SH}) - -_LIBDL_SH= case `uname -s` in Linux) echo "-Wl,-Bdynamic -ldl";; *) echo;; esac -_LIBDL!= ${_LIBDL_SH} -LIBDL?= ${_LIBDL}$(shell ${_LIBDL_SH}) - -_LIBKVM_SH= case `uname -s` in *BSD) echo "-lkvm";; *) echo;; esac -_LIBKVM!= ${_LIBKVM_SH} -LIBKVM?= ${_LIBKVM}$(shell ${_LIBKVM_SH}) - _PREFIX_SH= if test -n "${PREFIX}" && test "${PREFIX}" != "/"; then echo "-DPREFIX=\\\"${PREFIX}\\\""; else echo ""; fi _PREFIX!= ${_PREFIX_SH} CFLAGS+= ${_PREFIX}$(shell ${_PREFIX_SH}) @@ -34,3 +16,7 @@ CFLAGS+= ${_PREFIX}$(shell ${_PREFIX_SH}) _PKG_PREFIX_SH= if test -n "${PKG_PREFIX}" && test "${PKG_PREFIX}" != "/"; then echo "-DPKG_PREFIX=\\\"${PKG_PREFIX}\\\""; else echo ""; fi _PKG_PREFIX!= ${_PKG_PREFIX_SH} CFLAGS+= ${_PKG_PREFIX}$(shell ${_PKG_PREFIX_SH}) + +_LCL_PREFIX_SH= if test -n "${LOCAL_PREFIX}" && test "${LOCAL_PREFIX}" != "/"; then echo "-DLOCAL_PREFIX=\\\"${LOCAL_PREFIX}\\\""; else echo ""; fi +_LCL_PREFIX!= ${_LCL_PREFIX_SH} +CFLAGS+= ${_LCL_PREFIX}$(shell ${_LCL_PREFIX_SH}) diff --git a/mk/prog.mk b/mk/prog.mk index 46bfb56b..237575c7 100644 --- a/mk/prog.mk +++ b/mk/prog.mk @@ -5,7 +5,6 @@ OBJS+= ${SRCS:.c=.o} -include ${MK}/sys.mk # Some systems don't include /lib in their standard link path # so we should embed it if different # This is currently hardcoded for NetBSD which has two dynamic linkers @@ -30,5 +29,7 @@ ${PROG}: ${SCRIPTS} ${OBJS} clean: rm -f ${CLEANFILES} +include ${MK}/sys.mk +include ${MK}/os.mk include ${MK}/depend.mk include ${MK}/gitignore.mk diff --git a/mk/sys.mk b/mk/sys.mk index 4be7baea..3619003b 100644 --- a/mk/sys.mk +++ b/mk/sys.mk @@ -11,7 +11,7 @@ PREFIX?= _UPREFIX_SH= case "${PREFIX}" in "") echo /usr;; *) echo "${PREFIX}";; esac _UPREFIX!= ${_UPREFIX_SH} UPREFIX= ${_UPREFIX}$(shell ${_UPREFIX_SH}) -PKG_PREFIX= /usr/local +LOCAL_PREFIX= /usr/local PICFLAG?= -fPIC diff --git a/src/libeinfo/Makefile b/src/libeinfo/Makefile index b40266f5..bcbfa62b 100644 --- a/src/libeinfo/Makefile +++ b/src/libeinfo/Makefile @@ -1,6 +1,3 @@ -MK= ../../mk -include ${MK}/os.mk - LIB= einfo SHLIB_MAJOR= 1 SRCS= libeinfo.c @@ -9,6 +6,7 @@ VERSION_MAP= einfo.map CFLAGS+= -I../includes -include ${MK}/cc.mk +MK= ../../mk include ${MK}/lib.mk +include ${MK}/cc.mk include ${MK}/${MKTERMCAP}.mk diff --git a/src/librc/Makefile b/src/librc/Makefile index 15c396b3..f47f5b07 100644 --- a/src/librc/Makefile +++ b/src/librc/Makefile @@ -1,6 +1,3 @@ -MK= ../../mk -include ${MK}/os.mk - LIB= rc SHLIB_MAJOR= 1 SRCS= librc.c librc-daemon.c librc-depend.c librc-misc.c \ @@ -14,5 +11,6 @@ LDADD+= ${LIBKVM} CFLAGS+= -I../includes -include ${MK}/cc.mk +MK= ../../mk include ${MK}/lib.mk +include ${MK}/cc.mk diff --git a/src/rc/Makefile b/src/rc/Makefile index 469ac984..8c43da85 100644 --- a/src/rc/Makefile +++ b/src/rc/Makefile @@ -36,9 +36,8 @@ LDADD+= -lutil -lrc -leinfo #LDFLAGS+= -Wl,--rpath=../librc -Wl,--rpath=../libeinfo MK= ../../mk -include ${MK}/cc.mk -include ${MK}/os.mk include ${MK}/prog.mk +include ${MK}/cc.mk CFLAGS+= -I../includes -I../librc -I../libeinfo CFLAGS+= -DLIB=\"${LIBNAME}\" -- cgit v1.2.3