blob: b1ec7e03970987dbc10aed4ae8074d626c38e9c1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
|
# Copyright 1999-2002 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Maintainer: Achim Gottinger <achim@gentoo.org>, Daniel Robbins <drobbins@gentoo.org>
# $Header: /var/cvsroot/gentoo-x86/x11-base/xfree/xfree-4.2.0-r8.ebuild,v 1.1 2002/03/14 23:52:57 azarah Exp $
MY_V="`echo ${PV} |sed -e 's:\.::g'`"
S=${WORKDIR}/xc
DESCRIPTION="Xfree86: famous and free X server"
SRC_PATH0="ftp://ftp.xfree.org/pub/XFree86/${PV}/source"
SRC_PATH1="ftp://ftp1.sourceforge.net/pub/mirrors/XFree86/${PV}/source"
SRC_URI="$SRC_PATH0/X${MY_V}src-1.tgz
$SRC_PATH0/X${MY_V}src-2.tgz
$SRC_PATH0/X${MY_V}src-3.tgz
$SRC_PATH1/X${MY_V}src-1.tgz
$SRC_PATH1/X${MY_V}src-2.tgz
$SRC_PATH1/X${MY_V}src-3.tgz
ftp://ftp.xfree86.org/pub/XFree86/4.2.0/fixes/4.2.0-xlib-i18n-module.patch
ftp://ftp.xfree86.org/pub/XFree86/4.2.0/fixes/4.2.0-zlib-security.patch
http://www.ibiblio.org/gentoo/gentoo-sources/truetype.tar.gz"
# NOTE: 4.2.0-xlib-i18n-module.patch is ONLY for XFree86 4.2.0
HOMEPAGE="http://www.xfree.org"
DEPEND=">=sys-libs/ncurses-5.1
>=sys-libs/zlib-1.1.3-r2
sys-devel/flex
sys-devel/perl
glide? ( >=media-libs/glide-v3-3.10 )"
RDEPEND=">=sys-libs/ncurses-5.1"
PROVIDE="virtual/x11
virtual/opengl
virtual/glu"
src_unpack () {
unpack X${MY_V}src-{1,2,3}.tgz
# resolve bug #794
# NOTE: 4.2.0-xlib-i18n-module.patch is ONLY for XFree86 4.2.0
# 4.2.0-zlib-security.patch is also ONLY for XFree86 4.2.0
cd ${WORKDIR}
patch -p0 < ${DISTDIR}/${PV}-xlib-i18n-module.patch || die
patch -p0 < ${DISTDIR}/${PV}-zlib-security.patch || die
cd ${S}
cp ${FILESDIR}/${PVR}/site.def config/cf/host.def
echo "#define DefaultGcc2i386Opt ${CFLAGS}" >> config/cf/host.def
echo "#define GccWarningOptions -Wno" >> config/cf/host.def
echo "#define DefaultCCOptions -ansi" >> config/cf/host.def
# optimize Mesa for architecture
if [ -n "`use sse`" ] ; then
echo "#define MesaUseKatmai YES" >> config/cf/host.def
fi
if [ -n "`use 3dnow`" ] ; then
echo "#define MesaUse3DNow YES" >> config/cf/host.def
fi
# build with glide3 support? (build the tdfx_dri.o module)
if [ -n "`use glide`" ]
then
echo "#define HasGlide3 YES" >> config/cf/host.def
fi
# fix build problem (XFree86 server among others, was not
# linked against libXau)
cp ${S}/programs/Xserver/Imakefile \
${S}/programs/Xserver/Imakefile.orig
sed -e '2i CCLINK = $(CC) -L../../lib/Xau -lXau' \
${S}/programs/Xserver/Imakefile.orig \
> ${S}/programs/Xserver/Imakefile
# Apply Xft quality patch from http://www.cs.mcgill.ca/~dchest/xfthack/
cd ${S}/lib/Xft
cat ${FILESDIR}/${PVR}/xft-quality.diff | patch -p1 || die
}
src_compile() {
emake World || die
if [ "`use nls`" ]
then
cd ${S}/nls
make || die
cd ${s}
fi
}
src_install() {
make install DESTDIR=${D} || die
make install.man DESTDIR=${D} || die
if [ "`use nls`" ]
then
cd ${S}/nls
make DESTDIR=${D} install || die
cd ${S}
fi
#we zap the host.def file which gets hard-coded with our CFLAGS, messing up other things that use xmkmf
echo > ${D}/usr/X11R6/lib/X11/config/host.def
#theoretically, /usr/X11R6/lib/X11/config is a possible candidate for config file management.
#If we find that people really worry about imake stuff, we may add it. But for now, we leave
#the dir unprotected.
insinto /etc/X11
doins ${FILESDIR}/${PVR}/XftConfig
dosym ../../../.././etc/X11/XftConfig /usr/X11R6/lib/X11/XftConfig
cd ${D}/usr/X11R6/lib/X11/fonts
tar -xz --no-same-owner -f ${DISTDIR}/truetype.tar.gz
dodir /usr/bin
dosym /usr/X11R6/bin /usr/bin/X11
dosym /usr/X11R6/lib/libGL.so.1.2 /usr/X11R6/lib/libMesaGL.so
dosym /usr/X11R6/lib/libGLU.so.1.3 /usr/lib/libMesaGLU.so
# .la files for libtool support
insinto /usr/X11R6/lib
doins ${FILESDIR}/${PVR}/lib/*.la
exeinto /etc/X11
#new session management script
doexe ${FILESDIR}/${PVR}/chooser.sh
#new display manager script
doexe ${FILESDIR}/${PVR}/startDM.sh
exeinto /etc/X11/Sessions
doexe ${FILESDIR}/${PVR}/Sessions/*
insinto /etc/env.d
doins ${FILESDIR}/${PVR}/10xfree
insinto /etc/X11/xinit
doins ${FILESDIR}/${PVR}/xinitrc
exeinto /etc/X11/xdm
doexe ${FILESDIR}/${PVR}/Xsession ${FILESDIR}/${PVR}/Xsetup_0
insinto /etc/X11/fs
newins ${FILESDIR}/${PVR}/xfs.config config
insinto /etc/pam.d
doins ${FILESDIR}/${PVR}/xdm
exeinto /etc/init.d
newexe ${FILESDIR}/${PVR}/xdm.start xdm
newexe ${FILESDIR}/${PVR}/xfs.start xfs
}
pkg_preinst() {
#this changed from a file to a symlink
rm -rf /usr/X11R6/lib/X11/XftConfig
}
pkg_postinst() {
echo ">>> Making font dirs..."
find /usr/X11R6/lib/X11/fonts/* -type d -maxdepth 1 -exec mkfontdir {} ';'
}
|