265 lines
7.1 KiB
Text
265 lines
7.1 KiB
Text
# $NetBSD: Makefile.common,v 1.10 2004/05/07 15:25:13 cjep 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
|
|
SHARED_LIB_MINOR= '@comment '
|
|
STATIC_LIB=
|
|
XF86RUSH= '@comment '
|
|
I810XVMC= '@comment '
|
|
LIBOLDX=
|
|
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} == "Linux"
|
|
|
|
LIBXTHRSTUB=
|
|
XTHRSTUB_MINOR=
|
|
SHARED_LIB_MINOR=
|
|
STATIC_LIB= '@comment '
|
|
XF86RUSH=
|
|
I810XVMC=
|
|
LIBOLDX= '@comment '
|
|
USE_GNU_TOOLS+= make
|
|
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
|
|
|
|
.else
|
|
|
|
LIBXTHRSTUB=
|
|
XTHRSTUB_MINOR=
|
|
SHARED_LIB_MINOR=
|
|
STATIC_LIB=
|
|
XF86RUSH= '@comment '
|
|
I810XVMC= '@comment '
|
|
LIBOLDX=
|
|
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+= SHARED_LIB_MINOR=${SHARED_LIB_MINOR}
|
|
PLIST_SUBST+= STATIC_LIB=${STATIC_LIB}
|
|
PLIST_SUBST+= XF86RUSH=${XF86RUSH}
|
|
PLIST_SUBST+= I810XVMC=${I810XVMC}
|
|
PLIST_SUBST+= LIBOLDX=${LIBOLDX}
|
|
PLIST_SUBST+= IMAKE_MANTOOLS=${IMAKE_MANTOOLS}
|
|
PLIST_SUBST+= LIBDRI=${LIBDRI}
|
|
PLIST_SUBST+= MAN_DIR=${MAN_DIR}
|
|
PLIST_SUBST+= LIBMAN_DIR=${LIBMAN_DIR}
|
|
PLIST_SUBST+= MAN_SUFFIX=${MAN_SUFFIX}
|
|
PLIST_SUBST+= LIBMAN_SUFFIX=${LIBMAN_SUFFIX}
|
|
PLIST_SUBST+= KERNMAN_DIR=${KERNMAN_DIR}
|
|
PLIST_SUBST+= KERNMAN_SUFFIX=${KERNMAN_SUFFIX}
|
|
PLIST_SUBST+= FILEMAN_DIR=${FILEMAN_DIR}
|
|
PLIST_SUBST+= FILEMAN_SUFFIX=${FILEMAN_SUFFIX}
|
|
PLIST_SUBST+= MISCMAN_DIR=${MISCMAN_DIR}
|
|
PLIST_SUBST+= MISCMAN_SUFFIX=${MISCMAN_SUFFIX}
|
|
|
|
.if defined(CHECK_X11_TYPE)
|
|
. if !defined(X11_TYPE) || empty(X11_TYPE:MXFree86)
|
|
PKG_FAIL_REASON+= "X11_TYPE=XFree86 is mandatory."
|
|
. endif
|
|
.endif
|
|
|
|
NO_MTREE= # defined
|
|
|
|
X11ROOT_PREFIX?= X11R6
|
|
WRKSRC?= ${WRKDIR}/xc
|
|
X11ROOT?= ${PREFIX}/${X11ROOT_PREFIX}
|
|
X11BASE= ${X11ROOT}
|
|
PREPEND_PATH= ${X11ROOT}/bin # Make sure we have this in PATH :)
|
|
|
|
PLIST_SUBST+= X11ROOT_PREFIX=${X11ROOT_PREFIX}
|
|
MESSAGE_SUBST+= X11ROOT=${X11ROOT}
|
|
|
|
#
|
|
# Any volunteer to test any platform not listed here? :)
|
|
#
|
|
ONLY_FOR_PLATFORM= FreeBSD-*-i386 Linux-*-i386 NetBSD-*-i386 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 linux
|
|
|
|
.if !defined(NO_XFREE86_TARGETS)
|
|
|
|
USE_LANGUAGES= c c++
|
|
|
|
. if !target(post-extract)
|
|
|
|
GLOBAL_LDFLAGS= -L${LOCALBASE}/lib -L${X11ROOT}/lib \
|
|
${_COMPILER_LD_FLAG}${RPATH_FLAG}${LOCALBASE}/lib \
|
|
${_COMPILER_LD_FLAG}${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" \
|
|
${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
|
|
. undef F
|
|
|
|
. 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
|
|
. undef F
|
|
|
|
. 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 # NO_XFREE86_TARGETS
|
|
|
|
.endif # !defined(XFREE86_ONLY_DIRS) || empty(XFREE86_ONLY_DIRS:M[Yy][Ee][Ss])
|
|
|
|
.endif # !defined(XFREE86_MAKEFILE_COMMON)
|