Subject: pkg/29042: Xorg on DragonFly
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <xtoddx@gmail.com>
List: pkgsrc-bugs
Date: 01/21/2005 23:11:00
>Number: 29042
>Category: pkg
>Synopsis: Xorg on DragonFly
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: pkg-manager
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Fri Jan 21 23:11:00 +0000 2005
>Originator: Todd Willey
>Release:
>Organization:
Crescent Anchor
>Environment:
>Description:
These changes fix several small build problems on DragonFlyBSD-current.
>How-To-Repeat:
>Fix:
4 Step Fix Process:
1) Edit meta-pkgs/xorg/Makefile.common
Change the line "@${TOUCH} ${WRKSRC}/config/cf/DragonFly.cf" to "@${CP} ../../x11/xorg-libs/files/DragonFly.cf ${WRKSRC}/config/cf/" on line 213.
2) Drop in the DragonFly.cf file in x11/xorg-libs/files/ (Included at bottom of message)
3) Update patch-ak in xorg-libs/patches to reorder gcc arguments (-Ldir before -llib ). Here is my new patch-ak:
--- programs/Xserver/hw/xfree86/xf86cfg/Imakefile.orig 2005-01-21 19:27:21.000000000 +0000
+++ programs/Xserver/hw/xfree86/xf86cfg/Imakefile 2005-01-21 19:41:06.000000000 +0000
@@ -127,10 +127,11 @@
DLLIB = DlLibrary
#endif
-LOCAL_LIBRARIES = $(XKBUILIB) $(XKBFILELIB) -lxf86config $(XXF86MISCLIB) \
- $(XXF86VMLIB) $(XAWLIB) $(XMULIB) $(XTOOLLIB) \
+LOCAL_LIBRARIES = -lxf86config $(XXF86MISCLIB) \
+ $(XXF86VMLIB) -lXaw $(XMULIB) $(XTOOLLIB) \
$(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(LOADERLIB) $(DLLIB) \
- $(XLIB) $(CURSESLIB) RegexLibrary -lm
+ $(XLIB) $(CURSESLIB) RegexLibrary -lm \
+ $(XKBUILIB) $(XKBFILELIB)
NormalProgramTarget($(PROG),$(OBJS),,$(LOCAL_LIBRARIES),)
InstallProgramWithFlags($(PROG),$(BINDIR),NullParameter)
4) Drop in the PLIST.DragonFly in xorg-libs to keep from attempting to package an unused/unbuilt library.
----- PLIST.DragonFly ----- (<< EOF )
@comment $NetBSD: PLIST.FreeBSD,v 1.2 2004/10/08 03:35:25 xtraeme Exp $
${X11ROOT_PREFIX}/lib/libFS.a
${X11ROOT_PREFIX}/lib/libFS.so
${X11ROOT_PREFIX}/lib/libFS.so.6
${X11ROOT_PREFIX}/lib/libGL.a
${X11ROOT_PREFIX}/lib/libGL.so
${X11ROOT_PREFIX}/lib/libGL.so.1
${X11ROOT_PREFIX}/lib/libGLU.a
${X11ROOT_PREFIX}/lib/libGLU.so
${X11ROOT_PREFIX}/lib/libGLU.so.1
${X11ROOT_PREFIX}/lib/libGLw.a
${X11ROOT_PREFIX}/lib/libGLw.so
${X11ROOT_PREFIX}/lib/libGLw.so.1
${X11ROOT_PREFIX}/lib/libICE.a
${X11ROOT_PREFIX}/lib/libICE.so
${X11ROOT_PREFIX}/lib/libICE.so.6
${X11ROOT_PREFIX}/lib/libOSMesa.a
${X11ROOT_PREFIX}/lib/libOSMesa.so
${X11ROOT_PREFIX}/lib/libOSMesa.so.4
${X11ROOT_PREFIX}/lib/libSM.a
${X11ROOT_PREFIX}/lib/libSM.so
${X11ROOT_PREFIX}/lib/libSM.so.6
${X11ROOT_PREFIX}/lib/libX11.a
${X11ROOT_PREFIX}/lib/libX11.so
${X11ROOT_PREFIX}/lib/libX11.so.6
${X11ROOT_PREFIX}/lib/libXRes.a
${X11ROOT_PREFIX}/lib/libXRes.so
${X11ROOT_PREFIX}/lib/libXRes.so.1
${X11ROOT_PREFIX}/lib/libXTrap.a
${X11ROOT_PREFIX}/lib/libXTrap.so
${X11ROOT_PREFIX}/lib/libXTrap.so.6
${X11ROOT_PREFIX}/lib/libXau.a
${X11ROOT_PREFIX}/lib/libXaw.a
${X11ROOT_PREFIX}/lib/libXaw.so
${X11ROOT_PREFIX}/lib/libXaw.so.6
${X11ROOT_PREFIX}/lib/libXaw.so.7
${X11ROOT_PREFIX}/lib/libXdmcp.a
${X11ROOT_PREFIX}/lib/libXext.a
${X11ROOT_PREFIX}/lib/libXext.so
${X11ROOT_PREFIX}/lib/libXext.so.6
${X11ROOT_PREFIX}/lib/libXfont.a
${X11ROOT_PREFIX}/lib/libXfont.so
${X11ROOT_PREFIX}/lib/libXfont.so.1
${X11ROOT_PREFIX}/lib/libXi.a
${X11ROOT_PREFIX}/lib/libXi.so
${X11ROOT_PREFIX}/lib/libXi.so.6
${X11ROOT_PREFIX}/lib/libXinerama.a
${X11ROOT_PREFIX}/lib/libXinerama.so
${X11ROOT_PREFIX}/lib/libXinerama.so.1
${X11ROOT_PREFIX}/lib/libXmu.a
${X11ROOT_PREFIX}/lib/libXmu.so
${X11ROOT_PREFIX}/lib/libXmu.so.6
${X11ROOT_PREFIX}/lib/libXmuu.a
${X11ROOT_PREFIX}/lib/libXmuu.so
${X11ROOT_PREFIX}/lib/libXmuu.so.1
${X11ROOT_PREFIX}/lib/libXp.a
${X11ROOT_PREFIX}/lib/libXp.so
${X11ROOT_PREFIX}/lib/libXp.so.6
${X11ROOT_PREFIX}/lib/libXpm.a
${X11ROOT_PREFIX}/lib/libXpm.so
${X11ROOT_PREFIX}/lib/libXpm.so.4
${X11ROOT_PREFIX}/lib/libXss.a
${X11ROOT_PREFIX}/lib/libXss.so
${X11ROOT_PREFIX}/lib/libXss.so.1
${X11ROOT_PREFIX}/lib/libXt.a
${X11ROOT_PREFIX}/lib/libXt.so
${X11ROOT_PREFIX}/lib/libXt.so.6
${X11ROOT_PREFIX}/lib/libXtst.a
${X11ROOT_PREFIX}/lib/libXtst.so
${X11ROOT_PREFIX}/lib/libXtst.so.6
${X11ROOT_PREFIX}/lib/libXv.a
${X11ROOT_PREFIX}/lib/libXv.so
${X11ROOT_PREFIX}/lib/libXv.so.1
${X11ROOT_PREFIX}/lib/libXvMC.a
${X11ROOT_PREFIX}/lib/libXvMC.so
${X11ROOT_PREFIX}/lib/libXvMC.so.1
${X11ROOT_PREFIX}/lib/libXxf86dga.a
${X11ROOT_PREFIX}/lib/libXxf86dga.so
${X11ROOT_PREFIX}/lib/libXxf86dga.so.1
${X11ROOT_PREFIX}/lib/libXxf86misc.a
${X11ROOT_PREFIX}/lib/libXxf86misc.so
${X11ROOT_PREFIX}/lib/libXxf86misc.so.1
${X11ROOT_PREFIX}/lib/libXxf86vm.a
${X11ROOT_PREFIX}/lib/libXxf86vm.so
${X11ROOT_PREFIX}/lib/libXxf86vm.so.1
${X11ROOT_PREFIX}/lib/libdps.a
${X11ROOT_PREFIX}/lib/libdps.so
${X11ROOT_PREFIX}/lib/libdps.so.1
${X11ROOT_PREFIX}/lib/libdpstk.a
${X11ROOT_PREFIX}/lib/libdpstk.so
${X11ROOT_PREFIX}/lib/libdpstk.so.1
${X11ROOT_PREFIX}/lib/libfntstubs.a
${X11ROOT_PREFIX}/lib/libfontenc.a
${X11ROOT_PREFIX}/lib/libfontenc.so
${X11ROOT_PREFIX}/lib/libfontenc.so.1
${X11ROOT_PREFIX}/lib/liboldX.a
${X11ROOT_PREFIX}/lib/liboldX.so
${X11ROOT_PREFIX}/lib/liboldX.so.6
${X11ROOT_PREFIX}/lib/libpsres.a
${X11ROOT_PREFIX}/lib/libpsres.so
${X11ROOT_PREFIX}/lib/libpsres.so.1
${X11ROOT_PREFIX}/lib/libxf86config.a
${X11ROOT_PREFIX}/lib/libxkbfile.a
${X11ROOT_PREFIX}/lib/libxkbfile.so
${X11ROOT_PREFIX}/lib/libxkbfile.so.1
${X11ROOT_PREFIX}/lib/libxkbui.a
${X11ROOT_PREFIX}/lib/libxkbui.so
${X11ROOT_PREFIX}/lib/libxkbui.so.1
${X11ROOT_PREFIX}/lib/libXaw.so.8
${X11ROOT_PREFIX}/lib/libXcomposite.a
${X11ROOT_PREFIX}/lib/libXcomposite.so
${X11ROOT_PREFIX}/lib/libXcomposite.so.1
${X11ROOT_PREFIX}/lib/libXdamage.a
${X11ROOT_PREFIX}/lib/libXdamage.so
${X11ROOT_PREFIX}/lib/libXdamage.so.1
${X11ROOT_PREFIX}/lib/libXevie.a
${X11ROOT_PREFIX}/lib/libXevie.so
${X11ROOT_PREFIX}/lib/libXevie.so.1
${X11ROOT_PREFIX}/lib/libXfixes.a
${X11ROOT_PREFIX}/lib/libXfixes.so
${X11ROOT_PREFIX}/lib/libXfixes.so.3
${X11ROOT_PREFIX}/lib/libXprintAppUtil.a
${X11ROOT_PREFIX}/lib/libXprintUtil.a
EOF
---- DragonFly.cf -----
/* xc/config/cf/DragonFly.cf */
#ifndef LocalBase
# define LocalBase @LOCALBASE@
#endif
#define UseElfFormat YES
#define OSBinaryFormat [ELF]
#ifndef OSName
# define OSName DefaultOSName OSBinaryFormat
#endif
#ifndef OSVendor
# define OSVendor /**/
#endif
#ifndef OSMajorVersion
# define OSMajorVersion DefaultOSMajorVersion
#endif
#ifndef OSMinorVersion
# define OSMinorVersion DefaultOSMinorVersion
#endif
#ifndef OSTeenyVersion
# define OSTeenyVersion DefaultOSTeenyVersion
#endif
/* #ifndef OSRelVersion */
/* Include this to get finer-grained information about the OS version */
#include "/usr/include/osreldate.h"
#define OSRelVersion __DragonFly_version
/* #endif */
XCOMM operating system: OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion) (OSRelVersion)
#define HasCplusplus YES
#define GccUsesGas YES
#define UseGas YES
#define GnuCpp YES
#define HasNdbm YES
#define HasPutenv YES
#define HasSnprintf YES
#define HasBSD44Sockets YES
#define HasDlopen YES
#define HasSetProcTitle YES
#define HasLibCrypt YES
#define HasShm YES
#define HasWChar32 YES
#define HasUsableFileMmap YES
#define HasNCurses YES
#define HasVarRun YES
#define HasVarDb YES
#define HasIssetugid YES
#define HasPoll YES
#define HasGetIfAddrs YES
#define IPv6SocketsAlsoIPv4 NO
#define InstallXloadSetGID NO
#define HasWeakSymbols UseElfFormat
/*
* Multi-thread safe libs
*/
#define HasPosixThreads YES
#define ThreadedX YES
#define SystemMTDefines -D_REENTRANT -D_THREAD_SAFE
#define HasThreadSafeAPI YES
#define MTSafeAPIDefines -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
# define BuildThreadStubLibrary YES
# define NeedUIThrStubs YES
# define ThreadsLibraries -pthread
# define SharedX11Reqs $(LDPRELIB)
# define SharedXtReqs $(LDPRELIB) $(XONLYLIB) $(SMLIB) $(ICELIB)
#define AvoidNullMakeCommand YES
#define StripInstalledPrograms YES
#define CompressAllFonts YES
#define Malloc0ReturnsNull YES
#define NeedConstPrototypes YES
#define NeedFunctionPrototypes YES
#define NeedNestedPrototypes YES
#define NeedVarargsPrototypes YES
#define NeedWidePrototypes NO
#define HasPlugin YES
#define VendorHasX11R6_3libXext YES /* XC or XFree86 >= 3.3.1 */
#define CcCmd cc
#define OptimizedCDebugFlags /* -O2 causes some files to die out */
#define CplusplusCmd c++
#define CppCmd cpp
#define PreProcessCmd CppCmd
#define StandardCppOptions -traditional
#define StandardCppDefines /**/
#ifndef DefaultCCOptions
# if defined(UseInstalled)
# define DefaultCCOptions /**/
# else
# if defined(HasGcc3) && HasGcc3
# define NoSystemWarn -Wno-system-headers
# else
# define NoSystemWarn
# endif
# define DefaultCCOptions -ansi -Dasm=__asm NoSystemWarn
# endif
#endif
#define HasSetUserContext YES
#define HasGetpeereid YES
#define HasMTRRSupport YES
#ifndef BuildXF86DRI
# define BuildXF86DRI YES
#endif
#if defined(i386Architecture)
# define HasAgpGart YES
#endif
/*
* SSE and 3DNow will be autodetected, so binutils is the only
* requirement for enabling this. By 4.2 they were all supported.
*/
#if defined(i386Architecture)
# define HasX86Support YES
# define HasMMXSupport YES
# define Has3DNowSupport YES
# define HasSSESupport YES
#else
# define HasX86Support NO
# define HasMMXSupport NO
# define Has3DNowSupport NO
# define HasSSESupport NO
#endif
#ifndef UseRpath
# define UseRpath YES
#endif
#ifndef RpathLoadFlags
# if UseRpath
# define RpathLoadFlags -Wl,-rpath,$(USRLIBDIRPATH)
# else
# define RpathLoadFlags /**/
# endif
#endif
#ifndef ExtraLoadFlags
# if !defined(UseInstalled)
# define ExtraLoadFlags RpathLoadFlags -Wl,-rpath-link,$(BUILDLIBDIR)
# else
# define ExtraLoadFlags RpathLoadFlags
# endif
#endif
#ifndef StaticLibrary
# define StaticLibrary(libpath,libname) -Wl,-Bstatic Concat(-L,libpath) Concat(-l,libname) -Wl,-Bdynamic
#endif
#define DlLibrary -Wl,--export-dynamic
#ifndef HasPam
# define HasPam YES
#endif
#ifndef PamLibraries
# define PamLibraries -lpam DlLibrary
#endif
#ifndef UseGnuMalloc
# define UseGnuMalloc NO
#endif
#ifndef GnuMallocLibrary
# define GnuMallocLibrary /**/
#endif
#ifndef HasZlib
# define HasZlib YES
#endif
#ifdef AlphaArchitecture
# define IoLibrary -lio
#else
# define IoLibrary /**/
#endif
#define ServerExtraSysLibs IoLibrary
#ifndef HasExpat
# define HasExpat YES
# define ExpatDir LocalBase
#endif
#ifndef HasFreetype2
# define HasFreetype2 YES
# define Freetype2Dir LocalBase
#endif
#undef InstallCmd
#define InstallCmd /usr/bin/install
#define AsmElfDefines -D__ELF__
#if GccUsesGas
# define GccGasOption -DGCCUSESGAS
# define AsmDefines -DUSE_GAS AsmElfDefines
#else
# define GccGasOption /**/
# define AsmDefines AsmElfDefines
#endif
#ifdef i386Architecture
# define ServerExtraDefines GccGasOption XFree86ServerDefines
#endif
#if defined(AlphaArchitecture) || defined(Sparc64Architecture) || \
defined(ia64Architecture) || defined(AMD64Architecture)
# define ServerExtraDefines GccGasOption XFree86ServerDefines -D_XSERVER64
#endif
#ifdef Sparc64Architecture
# define AsVISOption -Av9a
# define AsOutputArchSize 64
#endif
#define StandardDefines -DCSRG_BASED
#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME
#define XawI18nDefines -DUSE_XWCHAR_STRING
#define HasMakefileSafeInclude YES
#define IncludeMakefile(file) @@# dependencies are in .depend
#define DependFileName .depend
#ifndef DoLoadableServer
# define DoLoadableServer YES
#endif
#ifndef ForceNormalLib
# define ForceNormalLib YES
#endif
#define HasMkstemp YES
#ifndef PreIncDir
# define PreIncDir /usr/include /* DefaultGccIncludeDir ? */
#endif
#define HasGroff YES
#define NroffCmd env GROFF_NO_SGR=y groff -Tascii
#define SetTtyGroup YES
#ifndef ExtraFilesToClean
# define ExtraFilesToClean *.core
#endif
#define DefaultUserPath /usr/pkg/bin/bin:/usr/bin:/sbin:/usr/sbin:$(BINDIR):/usr/local/bin
#define DefaultSystemPath /usr/pkg/sbin:/bin:/usr/bin:/sbin:/usr/sbin:$(BINDIR)
#ifndef SystemManDirectory
# define SystemManDirectory /usr/share/man
#endif
#define InstKmemFlags -g kmem -m 2755
#ifndef CompressManPages
# define CompressManPages NO
#endif
#define HasBsdMake YES
#ifndef SharedLibXdmGreet
# define SharedLibXdmGreet NO
#endif
#ifndef HasCookieMaker
/* Which versions have /dev/urandom? */
#define HasCookieMaker YES
#define MkCookieCmd \
'dd if=/dev/urandom bs=16 count=1 2>/dev/null | hexdump -e \\"%08x\\"'
#endif
#include <bsdLib.rules>
#include <xorg.cf>