Magellan Linux

Annotation of /branches/R11-unstable/include/xorg.sminc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1334 - (hide annotations) (download)
Sat May 2 14:30:48 2009 UTC (15 years ago) by niro
Original Path: trunk/core/include/xorg.sminc
File size: 4968 byte(s)
-added general UP2DATE Uri
1 niro 2 # $Header: /magellan-cvs/smage/include/xorg.sminc,v 1.18 2008/02/16 11:26:47 niro Exp $
2     # xorg global smage2 functions
3    
4     # must: X11_dir (defaults to /usr in sminc)
5     # optional:
6     # X11_FONT_DIR
7     # SRCFILE
8     # SRCDIR
9     # SRC_URI
10     # DEPEND
11     # SDEPEND
12    
13     # global xorg functions needed in the sminc
14    
15     # checks if ${PNAME} is a font package
16     is_xorg_font()
17     {
18     if [[ ${PNAME/#font-/} != ${PNAME} ]] &&
19     [[ ${PNAME} != font-alias ]] &&
20     [[ ${PNAME} != font-util ]]
21     then
22     return 0
23     fi
24    
25     return 1
26     }
27    
28     # checks if ${PNAME} is a video driver package
29     is_xorg_video_driver()
30     {
31     [[ ${PNAME/#xf86-video/} != ${PNAME} ]] && return 0
32     return 1
33    
34     }
35    
36     # checks if ${PNAME} is a input driver package
37     is_xorg_input_driver()
38     {
39     [[ ${PNAME/#xf86-input/} != ${PNAME} ]] && return 0
40     return 1
41     }
42    
43     # checks for general driver packages
44     is_xorg_driver()
45     {
46     if is_xorg_video_driver ||
47     is_xorg_input_driver
48     then
49     return 0
50     fi
51    
52     return 1
53     }
54    
55     # check if old <=Xorg-6.9 is installed; aborts installation
56     is_old_xorg_installed()
57     {
58     local RED="\033[1;6m\033[31m"
59     local DEF="\033[0m"
60    
61     if [ -e /usr/X11R6 ] && [[ $(readlink /usr/X11R6) != ../usr ]]
62     then
63     echo
64     echo -e ${RED}" !!! Remove all old <=xorg-6.9 installations first."${DEF}
65     echo -e ${RED}" !!! You also need to check all packages which are installed to /usr/X11R6"${DEF}
66     echo
67    
68     # print a pkg list if magequery supports this
69     if [[ -n $(/sbin/magequery -h | grep -- -f) ]]
70     then
71     echo "Please check following packages:"
72     /sbin/magequery -f /usr/X11R6 | while read pkg
73     do
74     echo -e " ${RED}*${DEF} ${pkg}"
75     done
76     echo
77     fi
78    
79     die "/usr/X11R6 directory exists ..."
80     fi
81     }
82    
83     # default vars
84     X11_DIR="/usr"
85    
86     # satisfy mage with preinstall
87     INHERITS="${INHERITS} xorg"
88    
89     # pkg setup
90     SRCFILE="${PNAME}-${PVER}.tar.bz2"
91     SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
92 niro 1186
93     #XORG_MIRROR="http://ftp.x.org/pub"
94     XORG_MIRROR="http://xorg.freedesktop.org/archive"
95    
96 niro 2 SRC_URI=(
97 niro 1186 ${XORG_MIRROR}/individual/app/${SRCFILE}
98     ${XORG_MIRROR}/individual/data/${SRCFILE}
99     ${XORG_MIRROR}/individual/doc/${SRCFILE}
100     ${XORG_MIRROR}/individual/driver/${SRCFILE}
101     ${XORG_MIRROR}/individual/font/${SRCFILE}
102     ${XORG_MIRROR}/individual/lib/${SRCFILE}
103     ${XORG_MIRROR}/individual/proto/${SRCFILE}
104     ${XORG_MIRROR}/individual/testdir/${SRCFILE}
105     ${XORG_MIRROR}/individual/util/${SRCFILE}
106     ${XORG_MIRROR}/individual/xserver/${SRCFILE}
107 niro 2 mirror://${PNAME}/${SRCFILE}
108     )
109    
110 niro 1334 UP2DATE="updatecmd_xorg ${PNAME}"
111    
112 niro 2 # add default deps
113     DEPEND="${DEPEND}
114     >= sys-apps/man-1.6"
115    
116     SDEPEND="${SDEPEND}
117     >= dev-util/pkgconfig-0.20
118     >= x11-misc/util-macros-1"
119    
120     # font dependencies
121     if is_xorg_font
122     then
123     DEPEND="${DEPEND}
124     >= x11-apps/mkfontscale-1
125     >= x11-apps/mkfontdir-1
126     >= media-fonts/font-alias-1"
127    
128     # encodings are run-time needed to rebuild the font.dirs files !!
129     # so don't use SDEPEND but DEPEND here!
130     DEPEND="${DEPEND}
131     >= media-fonts/encodings-1"
132    
133     XORG_FONT_PKG=yes
134     SPECIAL_VARS="${SPECIAL_VARS} XORG_FONT_PKG"
135     #INHERITS="${INHERITS} xorg"
136     fi
137    
138     # default input driver dependencies
139     if is_xorg_input_driver
140     then
141     DEPEND="${DEPEND}
142     >= x11-base/xorg-server-1"
143    
144     SDEPEND="${SDEPEND}
145     >= x11-proto/inputproto-1
146     >= x11-proto/randrproto-1
147     >= x11-proto/xproto-7"
148     fi
149    
150     # default video driver dependencies
151     if is_xorg_video_driver
152     then
153     DEPEND="${DEPEND}
154     >= x11-base/xorg-server-1"
155    
156     SDEPEND="${SDEPEND}
157     >= x11-proto/fontsproto-2
158     >= x11-proto/randrproto-1
159     >= x11-proto/renderproto-0.9
160     >= x11-proto/xextproto-7
161     >= x11-proto/xproto-7
162     >= x11-proto/videoproto-2"
163     fi
164    
165     xorg_src_prepare()
166     {
167     # check for old xorg installations
168     is_old_xorg_installed
169    
170     munpack ${SRCFILE} || die
171     }
172    
173     xorg_src_configure()
174     {
175     cd ${SRCDIR}
176    
177     # abort if configure script is not found
178     [ ! -x ./configure ] && return
179    
180     local conf_opts="$@"
181    
182     # setup fonts
183     if is_xorg_font
184     then
185     # setup default font dir
186     : ${XORG_FONT_DIR=${PNAME##*-}}
187    
188     # fix case of font directories
189     XORG_FONT_DIR=${XORG_FONT_DIR/ttf/TTF}
190     XORG_FONT_DIR=${XORG_FONT_DIR/otf/OTF}
191     XORG_FONT_DIR=${XORG_FONT_DIR/type1/Type1}
192     XORG_FONT_DIR=${XORG_FONT_DIR/speedo/Speedo}
193    
194     conf_opts="${conf_opts} --with-fontdir=/usr/share/fonts/${XORG_FONT_DIR}"
195     fi
196    
197     # setup drivers
198     if is_xorg_driver
199     then
200     # don't build static driver modules
201     conf_opts="${conf_opts} --disable-static"
202     fi
203    
204     mconfigure \
205     --prefix=${X11_DIR} \
206     ${conf_opts} \
207     || die
208     }
209    
210     xorg_src_compile()
211     {
212     cd ${SRCDIR}
213     xorg_src_configure || die
214     mmake || die
215     }
216    
217     xorg_src_install()
218     {
219     cd ${SRCDIR}
220     make DESTDIR=${BINDIR} install || die
221    
222     # remove libtool files for server modules
223     if [ -e ${BINDIR}/usr/$(mlibdir)/xorg/modules ]
224     then
225     find ${BINDIR}/usr/$(mlibdir)/xorg/modules -name '*.la' | xargs rm -f
226     fi
227     }
228    
229     xorg_preinstall()
230     {
231     # check for old xorg installations
232     is_old_xorg_installed
233    
234     # run this in postinstall to cover --src-install builds
235     # ( the is now package-dir at this moment, cause its not already builded :)
236     # if [[ -n ${XORG_FONT_PKG} ]]
237     # then
238     # xorg_discover_font_dirs
239     # fi
240     }
241    
242     export_inherits xorg src_prepare src_compile src_install preinstall