File: X11/XFree86/Makefile
base-0 patch-1
Line 1Line 1
GARNAME = XFree86
GARNAME = XFree86
GARVERSION = 4.2.1
GARVERSION = 4.3.0
CATEGORIES = XFree86
CATEGORIES = XFree86
MASTER_SITES = ftp://ftp.xfree86.org/pub/$(GARNAME)/4.2.0/source/
MASTER_SITES += ftp://ftp.xfree86.org/pub/$(GARNAME)/$(GARVERSION)/patches/
MASTER_SITES = ftp://ftp.xfree86.org/pub/$(GARNAME)/$(GARVERSION)/source/
#MASTER_SITES += ftp://ftp.xfree86.org/pub/$(GARNAME)/$(GARVERSION)/patches/
MASTER_SITES += ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/gnu/fonts/
MASTER_SITES += ftp://ftp.tux.org/pub/distributions/tinylinux/tinyX/
MASTER_SITES += ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/gnu/fonts/
MASTER_SITES += ftp://ftp.tux.org/pub/distributions/tinylinux/tinyX/
DISTFILES = X420src-1.tgz X420src-2.tgz Xtinylib.tar.gz xinitrc.cpp startx encodings.dir t1.fonts.dir t1.fonts.alias misc.fonts.dir misc.fonts.alias gnu-gs-fonts-std-6.0.tar.gz urw++license
DISTFILES = X430src-1.tgz X430src-2.tgz X430src-3.tgz X430src-4.tgz X430src-5.tgz Xtinylib.tar.gz xinitrc.cpp startx encodings.dir t1.fonts.dir t1.fonts.alias misc.fonts.dir misc.fonts.alias gnu-gs-fonts-std-6.0.tar.gz urw++license
#lnxbbc.cf
#lnxbbc.cf
PATCHFILES = 4.2.0-4.2.1.diff.gz
PATCHFILES = gar-base.diff
MAINTAINER = Jon Webb <lnx-bbc@jonwebb.org>, Nick Moffitt <nick@zork.net>
MAINTAINER = Jon Webb <lnx-bbc@jonwebb.org>, Nick Moffitt <nick@zork.net>
WORKSRC = $(WORKDIR)/xc
#LIBDEPS = lib/zlib lib/ncurses
LIBDEPS = devel/glibc
BUILDDEPS = devel/flex devel/bison devel/imake
LICENSE = Bitstream_Type1 URW_GPL_plus_doc_exemption MIT
#LICENSE = Bitstream_Type1 URW_GPL_plus_doc_exemption MIT
LICENSE = MIT
Bitstream_Type1_LICENSE_TEXT = $(WORKSRC)/fonts/scaled/Type1/Copyright
URW_GPL_plus_doc_exemption_LICENSE_TEXT = $(DOWNLOADDIR)/urw++license
# font license-wise, bitstream are the good guys; IBM & B&H won't let you make your own;
Bitstream_Type1_LICENSE_TEXT = $(WORKSRC)/fonts/scaled/Type1/Copyright
URW_GPL_plus_doc_exemption_LICENSE_TEXT = $(DOWNLOADDIR)/urw++license
# font license-wise, bitstream are the good guys; IBM & B&H won't let you make your own;
Line 24Line 22
A freely redistributable open-source implementation of the X Window System.
endef

A freely redistributable open-source implementation of the X Window System.
endef

PATCHDIRLEVEL = 0
WORKSRC = $(WORKDIR)/xc

SOURCE_LANGUAGES = c
BUILDDEPS = devel/flex devel/bison #devel/imake X will build its own imake no matter what we do
LIBDEPS = lib/ncurses lib/libpng #lib/zlib

CONFIGURE_SCRIPTS = $(WORKSRC)/Makefile
CONFIGURE_ARGS = configure NINJACC=$(build_CC) NINJALD=$(build_LD) NINJAAS=$(build_AS) NINJAAR=$(build_AR) NINJARANLIB=$(build_RANLIB) NINJACFLAGS="$(build_CFLAGS)" EXTRA_LDOPTIONS="$(build_LDFLAGS)" FLAGS="$(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS='$(build_CFLAGS)' CC='$(build_CC)'"
CONFIGURE_ENV = IMAKECPP=$(CPP) IMAKECC=$(build_CC)
BUILD_SCRIPTS = $(WORKSRC)/Makefile
# We build in series now. In future, this will be done with a
# magical Imake var that we set to $(PARALLELMFLAGS)
BUILD_SCRIPTS = $(WORKSRC)/Makefile
# We build in series now. In future, this will be done with a
# magical Imake var that we set to $(PARALLELMFLAGS)
BUILD_ARGS = World -j1 CC="$(CC)"
BUILD_ARGS = build WORLDOPTS= NINJACC=$(CC) NINJALD=$(LD) NINJAAS=$(AS) NINJAAR=$(AR) NINJARANLIB=$(RANLIB) NINJACFLAGS="$(CFLAGS)" EXTRA_LDOPTIONS="$(LDFLAGS)"
INSTALL_SCRIPTS = $(WORKSRC)/Makefile
INSTALL_ARGS = install -I$(includedir)
INSTALL_SCRIPTS = $(WORKSRC)/Makefile
INSTALL_ARGS = install -I$(includedir)
Line 39Line 45
include ../../gar.mk

include ../../gar.mk


CROSS_COMPILING = $(if $(filter $(GARBUILD),$(GARHOST)),NO,YES)

extract-xinitrc.cpp:
extract-xinitrc.cpp:
        cp $(DOWNLOADDIR)/xinitrc.cpp $(WORKSRC)/programs/xinit/
        cp $(DOWNLOADDIR)/xinitrc.cpp $(EXTRACTDIR)/xc/programs/xinit/
        $(MAKECOOKIE)

extract-lnxbbc.cf:
        $(MAKECOOKIE)

extract-lnxbbc.cf:
        cp $(DOWNLOADDIR)/lnxbbc.cf $(WORKSRC)/config/cf/
        cp $(DOWNLOADDIR)/lnxbbc.cf $(EXTRACTDIR)/xc/config/cf/
        $(MAKECOOKIE)

pre-configure:
        $(MAKECOOKIE)

pre-configure:
Line 56Line 64
        echo "#define UsrLibDir $(libdir)" >> $(WORKSRC)/config/cf/site.def
        echo "#define KDriveXServer YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define TinyXServer YES " >> $(WORKSRC)/config/cf/site.def
        echo "#define UsrLibDir $(libdir)" >> $(WORKSRC)/config/cf/site.def
        echo "#define KDriveXServer YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define TinyXServer YES " >> $(WORKSRC)/config/cf/site.def

        echo "#ifdef CrossCompiling" >> $(WORKSRC)/config/cf/site.def
        echo "#undef CrossCompiling" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define CrossCompiling $(CROSS_COMPILING)" >> $(WORKSRC)/config/cf/site.def
        #echo "#define XvesaServer YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define XfbdevServer YES" >> $(WORKSRC)/config/cf/site.def
        #echo "#define XvesaServer YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define XfbdevServer YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define XnestServer YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define XnestServer NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildSpeedo YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildFreeType YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildType1 YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildLibraries YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildDocs NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildSpeedo YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildFreeType YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildType1 YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildLibraries YES" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildDocs NO" >> $(WORKSRC)/config/cf/site.def

        echo "#define BuildXcursorgen NO">> $(WORKSRC)/config/cf/site.def
        echo "#define Hastcl NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define Hastk NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define HasNCurses NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define Hastcl NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define Hastk NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define HasNCurses NO" >> $(WORKSRC)/config/cf/site.def
        echo "#define OptimizedCDebugFlags -Os -fomit-frame-pointer" >> $(WORKSRC)/config/cf/site.def # optimize for space
        echo "#define OptimizedCDebugFlags " >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        #
        echo "#ifdef AfterVendorCF" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        #
        echo "#ifdef AfterVendorCF" >> $(WORKSRC)/config/cf/site.def

        echo "#ifdef DefaultCCOptions" >> $(WORKSRC)/config/cf/site.def
        echo "#undef DefaultCCOptions" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define DefaultCCOptions \$$(NINJACFLAGS)" >> $(WORKSRC)/config/cf/site.def
        echo "#undef DefaultFontPath" >> $(WORKSRC)/config/cf/site.def
        echo "#define DefaultFontPath built-ins,/lib/X11/fonts/misc/,/lib/X11/fonts/Type1/" >> $(WORKSRC)/config/cf/site.def
        echo "#undef HasPam" >> $(WORKSRC)/config/cf/site.def
        echo "#define HasPam NO" >> $(WORKSRC)/config/cf/site.def
        echo "#undef HasZlib" >> $(WORKSRC)/config/cf/site.def
        echo "#define HasZlib NO" >> $(WORKSRC)/config/cf/site.def
        echo "#undef DefaultFontPath" >> $(WORKSRC)/config/cf/site.def
        echo "#define DefaultFontPath built-ins,/lib/X11/fonts/misc/,/lib/X11/fonts/Type1/" >> $(WORKSRC)/config/cf/site.def
        echo "#undef HasPam" >> $(WORKSRC)/config/cf/site.def
        echo "#define HasPam NO" >> $(WORKSRC)/config/cf/site.def
        echo "#undef HasZlib" >> $(WORKSRC)/config/cf/site.def
        echo "#define HasZlib NO" >> $(WORKSRC)/config/cf/site.def

        # bison
        # XXX: Is there any reason YaccCmd can't just be "bison -y" and let PATH sort it out?
        echo "#ifdef YaccCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#undef YaccCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define YaccCmd $(build_DESTDIR)$(build_bindir)/bison -y" >> $(WORKSRC)/config/cf/site.def
        # XXX: Is there any reason YaccCmd can't just be "bison -y" and let PATH sort it out?
        echo "#ifdef YaccCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#undef YaccCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define YaccCmd $(build_DESTDIR)$(build_bindir)/bison -y" >> $(WORKSRC)/config/cf/site.def

        # gcc
        echo "#ifdef CcCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#undef CcCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def

        echo "#define CcCmd \$$(NINJACC)" >> $(WORKSRC)/config/cf/site.def
        # ld
        echo "#ifdef LdCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#undef LdCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define LdCmd \$$(NINJALD)" >> $(WORKSRC)/config/cf/site.def
        # as
        echo "#ifdef AsCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#undef AsCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define AsCmd \$$(NINJAAS)" >> $(WORKSRC)/config/cf/site.def
        # ar
        echo "#ifdef ArCmdBase" >> $(WORKSRC)/config/cf/site.def
        echo "#undef ArCmdBase" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define ArCmdBase \$$(NINJAAR)" >> $(WORKSRC)/config/cf/site.def
        # ranlib
        echo "#ifdef RanlibCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#undef RanlibCmd" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define RanlibCmd \$$(NINJARANLIB)" >> $(WORKSRC)/config/cf/site.def
        echo "#define BuildSharedLispModules NO" >> $(WORKSRC)/config/cf/site.def
        echo "#endif" >> $(WORKSRC)/config/cf/site.def
        echo "#define emad" > $(WORKSRC)/config/cf/cross.def
        echo "#define HostCcCmd $(build_CC)" >> $(WORKSRC)/config/cf/cross.def
        echo "#include <cross.rules>" >> $(WORKSRC)/config/cf/cross.def
        $(MAKECOOKIE)

        $(MAKECOOKIE)


#pre-install:
#        echo "" >> $(WORKSRC)/config/cf/date.def
#        echo "" >> $(WORKSRC)/config/cf/version.def
#        $(MAKECOOKIE)

#post-install:
#        cp -f $(WORKSRC)/config/cf/* $(DESTDIR)$(libdir)/X11/config
#        $(MAKECOOKIE)

pre-install:
        touch $(WORKSRC)/fonts/encodings/encodings.dir
pre-install:
        touch $(WORKSRC)/fonts/encodings/encodings.dir

        echo "" >> $(WORKSRC)/config/cf/date.def
        echo "" >> $(WORKSRC)/config/cf/version.def
        $(MAKECOOKIE)

        $(MAKECOOKIE)

post-install:
post-install:

        cp -f $(WORKSRC)/config/cf/* $(DESTDIR)$(libdir)/X11/config
        mkdir -p $(DESTDIR)$(libdir)/X11/fonts/misc/
        # If we want to trim these down, the xterms like to use
        # trimmed about half of these (to the ones xterm asks for explcitly)
        mkdir -p $(DESTDIR)$(libdir)/X11/fonts/misc/
        # If we want to trim these down, the xterms like to use
        # trimmed about half of these (to the ones xterm asks for explcitly)
Line 153Line 213
        chmod 0644 $(DESTDIR)$(libdir)/X11/fonts/Type1/*
        # ok back to the configs
        mkdir -p $(DESTDIR)$(includedir)/X11/config/
        chmod 0644 $(DESTDIR)$(libdir)/X11/fonts/Type1/*
        # ok back to the configs
        mkdir -p $(DESTDIR)$(includedir)/X11/config/
        mv $(DESTDIR)$(libdir)/X11/config/* $(DESTDIR)$(includedir)/X11/config/
        cp $(DESTDIR)$(libdir)/X11/config/* $(DESTDIR)$(includedir)/X11/config/
        chmod 0644 $(DESTDIR)$(includedir)/X11/config/*
        cp $(WORKSRC)/config/cf/* $(DESTDIR)$(includedir)/X11/config/
        chmod 0644 $(DESTDIR)$(includedir)/X11/config/*
        chmod 0644 $(DESTDIR)$(includedir)/X11/config/*
        cp $(WORKSRC)/config/cf/* $(DESTDIR)$(includedir)/X11/config/
        chmod 0644 $(DESTDIR)$(includedir)/X11/config/*