# $NetBSD: Makefile.common,v 1.25 2005/12/08 09:17:21 rillig Exp $ # # XBUILD_DIRS is the group of directories under ${WRKSRC} that will # be built in. # XINCLUDE_DIRS is the group of directories under ${WRKSRC} that need # to be Makefilesed or included in besides XBUILD_DIRS # XINSTALL_DIRS is the group of directories which will have # their install targets run. # XINSTALL_MAN_DIRS is the group of directories which will have # their install.man targets run. # src-1 is the base. # src-2 contains various programs like bitmap, twm, xterm, xdm, xinit, ... # src-3 is xc/programs/Xserver/. # src-4 contains xc/fonts/{PEX,bdf/100dpi,bdf/75dpi,bdf/misc,encodings} # src-5 contains xc/fonts/scaled/{CID,Ethiopic,Meltho,Speedo,TTF,Type1} # src-6 contains the documentation source. # src-7 contains the hardcopy documentation. .if !defined(XFREE86_MAKEFILE_COMMON) XFREE86_MAKEFILE_COMMON= # defined .include "../../mk/bsd.prefs.mk" # # Manual page handling. # .if ${OPSYS} == "FreeBSD" . if ${LOWER_OPSYS_VERSUFFIX} == "4" XTHRSTUB_MINOR= '@comment ' LIBXTHRSTUB= . else XTHRSTUB_MINOR= LIBXTHRSTUB= '@comment ' . endif XF86RUSH= '@comment ' IMAKE_MANTOOLS= LIBDRI= MANSOURCEPATH= man/man MAN_DIR= ${MANSOURCEPATH}1 LIBMAN_DIR= ${MANSOURCEPATH}3 KERNMAN_DIR= ${MANSOURCEPATH}4 FILEMAN_DIR= ${MANSOURCEPATH}5 MISCMAN_DIR= ${MANSOURCEPATH}7 MAN_SUFFIX= 1 LIBMAN_SUFFIX= 3 KERNMAN_SUFFIX= 4 FILEMAN_SUFFIX= 5 MISCMAN_SUFFIX= 7 .elif ${OPSYS} == "SunOS" XF86RUSH= '@comment ' IMAKE_MANTOOLS= LIBDRI= '@comment ' MANSOURCEPATH= man/man MAN_DIR= ${MANSOURCEPATH}1 LIBMAN_DIR= ${MANSOURCEPATH}3 KERNMAN_DIR= ${MANSOURCEPATH}4 FILEMAN_DIR= ${MANSOURCEPATH}5 MISCMAN_DIR= ${MANSOURCEPATH}7 MAN_SUFFIX= 1x LIBMAN_SUFFIX= 3x KERNMAN_SUFFIX= 4 FILEMAN_SUFFIX= 5x MISCMAN_SUFFIX= 7 .elif ${OPSYS} == "Linux" XF86RUSH= USE_TOOLS+= gmake IMAKE_MANTOOLS= LIBDRI= MANSOURCEPATH= man/man MAN_DIR= ${MANSOURCEPATH}1 LIBMAN_DIR= ${MANSOURCEPATH}3 KERNMAN_DIR= ${MANSOURCEPATH}4 FILEMAN_DIR= ${MANSOURCEPATH}5 MISCMAN_DIR= ${MANSOURCEPATH}7 MAN_SUFFIX= 1x LIBMAN_SUFFIX= 3x KERNMAN_SUFFIX= 4 FILEMAN_SUFFIX= 5x MISCMAN_SUFFIX= 7 .elif ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD" XF86RUSH= '@comment ' IMAKE_MANTOOLS= '@comment ' LIBDRI= '@comment ' MANSOURCEPATH= man/cat MAN_DIR= ${MANSOURCEPATH}1 LIBMAN_DIR= ${MANSOURCEPATH}3 KERNMAN_DIR= ${MANSOURCEPATH}4 FILEMAN_DIR= ${MANSOURCEPATH}5 MISCMAN_DIR= ${MANSOURCEPATH}7 MAN_SUFFIX= 0 LIBMAN_SUFFIX= ${MAN_SUFFIX} KERNMAN_SUFFIX= ${MAN_SUFFIX} FILEMAN_SUFFIX= ${MAN_SUFFIX} MISCMAN_SUFFIX= ${MAN_SUFFIX} .endif # NetBSD .if !defined(XFREE86_ONLY_DIRS) || empty(XFREE86_ONLY_DIRS:M[Yy][Ee][Ss]) PLIST_SUBST+= XTHRSTUB_MINOR=${XTHRSTUB_MINOR} PLIST_SUBST+= LIBXTHRSTUB=${LIBXTHRSTUB} PLIST_SUBST+= XF86RUSH=${XF86RUSH} PLIST_SUBST+= IMAKE_MANTOOLS=${IMAKE_MANTOOLS} PLIST_SUBST+= LIBDRI=${LIBDRI} PLIST_SUBST+= MAN_DIR=${MAN_DIR:Q} PLIST_SUBST+= LIBMAN_DIR=${LIBMAN_DIR:Q} PLIST_SUBST+= MAN_SUFFIX=${MAN_SUFFIX:Q} PLIST_SUBST+= LIBMAN_SUFFIX=${LIBMAN_SUFFIX:Q} PLIST_SUBST+= KERNMAN_DIR=${KERNMAN_DIR:Q} PLIST_SUBST+= KERNMAN_SUFFIX=${KERNMAN_SUFFIX:Q} PLIST_SUBST+= FILEMAN_DIR=${FILEMAN_DIR:Q} PLIST_SUBST+= FILEMAN_SUFFIX=${FILEMAN_SUFFIX:Q} PLIST_SUBST+= MISCMAN_DIR=${MISCMAN_DIR:Q} PLIST_SUBST+= MISCMAN_SUFFIX=${MISCMAN_SUFFIX:Q} CHECK_X11_TYPE?= yes .if defined(CHECK_X11_TYPE) . if !defined(X11_TYPE) || empty(X11_TYPE:MXFree86) PKG_SKIP_REASON+= "X11_TYPE=XFree86 is mandatory." . endif .endif NO_MTREE= yes WRKSRC?= ${WRKDIR}/xc X11ROOT?= ${LOCALBASE}/${X11ROOT_PREFIX} PREPEND_PATH= ${X11ROOT}/bin # Make sure we have this in PATH :) PLIST_SUBST+= X11ROOT_PREFIX=${X11ROOT_PREFIX:Q} MESSAGE_SUBST+= X11ROOT=${X11ROOT} # # Any volunteer to test any platform not listed here? :) # ONLY_FOR_PLATFORM= FreeBSD-*-* Linux-*-* NetBSD-*-* OpenBSD-*-* SunOS-*-* MASTER_SITE_XFREE+= \ ftp://archive.progeny.com/XFree86/${XF_VER}/source/ \ http://ftp.mirrorcentral.com/pub/XFree86/${XF_VER}/source/ \ ftp://ftp.xfree86.org/pub/XFree86/${XF_VER}/source/ \ ftp://ftp.gwdg.de/pub/xfree86/XFree86/${XF_VER}/source/ \ ftp://ftp.free.fr/pub/XFree86/${XF_VER}/source/ XF_VER= 4.4.0 IMAKE= ${X11ROOT}/bin/imake XINSTALL_DIRS?= ${XBUILD_DIRS} _XINCLUDE_DIRS= include ${XBUILD_DIRS} ${XINCLUDE_DIRS} # # Operating Systems to pass our compiler options (CC, CXX, CPP, CFLAGS). # SYSTEMS= FreeBSD NetBSD OpenBSD linux sun .if !defined(NO_XFREE86_TARGETS) USE_LANGUAGES= c c++ . if !target(post-extract) GLOBAL_LDFLAGS= -L${LOCALBASE}/lib -L${X11ROOT}/lib \ ${COMPILER_RPATH_FLAG}${LOCALBASE}/lib \ ${COMPILER_RPATH_FLAG}${X11BASE}/lib post-extract: @${SED} \ -e "s|@BLNK@|${BUILDLINK_DIR}|g" \ -e "s|@MAKE@|${MAKE_PROGRAM}|g" \ -e "s|@MAKE_PROGRAM@|${MAKE_PROGRAM}|g" \ -e "s|@IMAKE@|${IMAKE}|g" \ -e "s|@RMAN@|${X11ROOT}/bin/rman|g" \ -e "s|@MKHTMLINDEX@|${X11ROOT}/bin/mkhtmlindex|g" \ -e "s|@GCCMAKEDEP@|${X11ROOT}/bin/gccmakedep|g" \ -e "s|@MAKEDEPEND@|${X11ROOT}/bin/makedepend|g" \ -e "s|@REVPATH@|${X11ROOT}/bin/revpath|g" \ -e "s|@PREFIX@|${X11ROOT}|g" \ -e "s|@LOCALBASE@|${LOCALBASE}|g" \ -e "s|@LDFLAGS@|${GLOBAL_LDFLAGS}|g" \ -e "s|@WRKSRC@|${WRKSRC}|g" \ -e "s|@KERNMAN_SUFFIX@|${KERNMAN_SUFFIX}|g" \ -e "s|@MISCMAN_SUFFIX@|${MISCMAN_SUFFIX}|g" \ -e "s|@KERNMAN_DIR@|${KERNMAN_DIR}|g" \ -e "s|@MISCMAN_DIR@|${MISCMAN_DIR}|g" \ ${FILESDIR}/host.def > ${WRKSRC}/config/cf/host.def @${LN} -sf ${X11ROOT}/bin/gccmakedep ${WRKSRC}/config/util @${LN} -sf ${X11ROOT}/bin/revpath ${WRKSRC}/config/util @${LN} -sf ${X11ROOT}/bin/pswrap ${WRKSRC}/config/pswrap @${LN} -sf ${X11ROOT}/lib/X11/config/version.def ${WRKSRC}/config/cf @${LN} -sf ${X11ROOT}/lib/X11/config/date.def ${WRKSRC}/config/cf . if exists(${FILESDIR}/Wraphelp.c) @${CP} ${FILESDIR}/Wraphelp.c ${WRKSRC}/lib/Xdmcp . endif . for F in ${SYSTEMS} @${MV} ${WRKSRC}/config/cf/${F}.cf \ ${WRKSRC}/config/cf/${F}.cf.in . endfor . endif . if !target(pre-configure) pre-configure: . for F in ${SYSTEMS} @${SED} -e "s|@@PKGSRC_CC@@|${CC}|g" \ -e "s|@@PKGSRC_CXX@@|${CXX}|g" \ -e "s|@@PKGSRC_CPP@@|${CPP}|g" \ -e "s|@@PKGSRC_CFLAGS@@|${CFLAGS:C/-I.*//}|g" \ -e "s|-I${LOCALBASE}/include||" \ -e "s|-I${X11BASE}/include||" \ ${WRKSRC}/config/cf/${F}.cf.in > \ ${WRKSRC}/config/cf/${F}.cf . endfor . endif . if !target(do-configure) do-configure: @for dir in ${_XINCLUDE_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${IMAKE} \ -DTOPDIR=${WRKSRC} -DCURDIR=$${dir} \ -I${WRKSRC}/config/cf; \ done @for dir in ${_XINCLUDE_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${MAKE} Makefiles; \ done @for dir in ${_XINCLUDE_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${MAKE} includes; \ done @for dir in include ${XBUILD_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${MAKE} depend; \ done . endif . if !target(do-build) do-build: @for dir in ${XBUILD_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${MAKE} all; \ done . endif . if !target(do-install) do-install: @for dir in ${XINSTALL_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${MAKE} install; \ done @for dir in ${XINSTALL_MAN_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${MAKE} install.man; \ done . endif .endif # !defined(NO_XFREE86_TARGETS) .endif # !defined(XFREE86_ONLY_DIRS) || empty(XFREE86_ONLY_DIRS:M[Yy][Ee][Ss]) .endif # !defined(XFREE86_MAKEFILE_COMMON)