5
5
export BUILDDIR=` pwd`
6
6
7
7
NCPU=4
8
+ uname -s | grep -i " linux" && NCPU=` cat /proc/cpuinfo | grep -c -i processor`
8
9
9
10
NDK=` which ndk-build`
10
11
NDK=` dirname $NDK `
@@ -21,7 +22,7 @@ $BUILDDIR/setCrossEnvironment.sh \
21
22
./autogen.sh --host=arm-linux-androideabi \
22
23
|| exit 1
23
24
cd $BUILDDIR
24
- }
25
+ } || exit 1
25
26
26
27
# =========== fontsproto ===========
27
28
@@ -33,7 +34,7 @@ $BUILDDIR/setCrossEnvironment.sh \
33
34
./autogen.sh --host=arm-linux-androideabi \
34
35
|| exit 1
35
36
cd $BUILDDIR
36
- }
37
+ } || exit 1
37
38
38
39
# =========== xtrans ===========
39
40
@@ -54,7 +55,7 @@ $BUILDDIR/setCrossEnvironment.sh \
54
55
55
56
cd $BUILDDIR
56
57
ln -sf ../xtrans-1.2.7 X11/Xtrans
57
- }
58
+ } || exit 1
58
59
59
60
# =========== xextproto ===========
60
61
@@ -66,7 +67,7 @@ $BUILDDIR/setCrossEnvironment.sh \
66
67
./autogen.sh --host=arm-linux-androideabi \
67
68
|| exit 1
68
69
cd $BUILDDIR
69
- }
70
+ } || exit 1
70
71
71
72
# =========== inputproto ===========
72
73
@@ -80,7 +81,7 @@ cd $BUILDDIR
80
81
for F in inputproto-2.3/* .h ; do
81
82
ln -sf ../$F X11/extensions/
82
83
done
83
- }
84
+ } || exit 1
84
85
85
86
# =========== kbproto ===========
86
87
@@ -94,7 +95,7 @@ cd $BUILDDIR
94
95
for F in kbproto-1.0.6/* .h ; do
95
96
ln -sf ../$F X11/extensions/
96
97
done
97
- }
98
+ } || exit 1
98
99
99
100
# =========== xineramaproto ===========
100
101
@@ -108,7 +109,7 @@ cd $BUILDDIR
108
109
for F in xineramaproto-1.2.1/* .h ; do
109
110
ln -sf ../$F X11/extensions/
110
111
done
111
- }
112
+ } || exit 1
112
113
113
114
# =========== renderproto ===========
114
115
@@ -122,7 +123,7 @@ cd $BUILDDIR
122
123
for F in renderproto-0.11.1/* .h ; do
123
124
ln -sf ../$F X11/extensions/
124
125
done
125
- }
126
+ } || exit 1
126
127
127
128
# =========== xfixesproto ===========
128
129
@@ -136,7 +137,7 @@ cd $BUILDDIR
136
137
for F in fixesproto-5.0/* .h ; do
137
138
ln -sf ../$F X11/extensions/
138
139
done
139
- }
140
+ } || exit 1
140
141
141
142
# =========== damageproto ===========
142
143
@@ -150,7 +151,7 @@ cd $BUILDDIR
150
151
for F in damageproto-1.2.1/* .h ; do
151
152
ln -sf ../$F X11/extensions/
152
153
done
153
- }
154
+ } || exit 1
154
155
155
156
# =========== compositeproto ===========
156
157
@@ -164,7 +165,7 @@ cd $BUILDDIR
164
165
for F in compositeproto-0.4.2/* .h ; do
165
166
ln -sf ../$F X11/extensions/
166
167
done
167
- }
168
+ } || exit 1
168
169
169
170
# =========== bigreqsproto ===========
170
171
@@ -178,7 +179,7 @@ cd $BUILDDIR
178
179
for F in bigreqsproto-1.1.2/* .h ; do
179
180
ln -sf ../$F X11/extensions/
180
181
done
181
- }
182
+ } || exit 1
182
183
183
184
# =========== scrnsaverproto ===========
184
185
@@ -192,7 +193,7 @@ cd $BUILDDIR
192
193
for F in scrnsaverproto-1.2.2/* .h ; do
193
194
ln -sf ../$F X11/extensions/
194
195
done
195
- }
196
+ } || exit 1
196
197
197
198
# =========== videoproto ===========
198
199
@@ -206,7 +207,7 @@ cd $BUILDDIR
206
207
for F in videoproto-2.3.2/* .h ; do
207
208
ln -sf ../$F X11/extensions/
208
209
done
209
- }
210
+ } || exit 1
210
211
211
212
# =========== resourceproto ===========
212
213
@@ -220,7 +221,7 @@ cd $BUILDDIR
220
221
for F in resourceproto-1.2.0/* .h ; do
221
222
ln -sf ../$F X11/extensions/
222
223
done
223
- }
224
+ } || exit 1
224
225
225
226
# =========== xcmiscproto ===========
226
227
@@ -234,7 +235,7 @@ cd $BUILDDIR
234
235
for F in xcmiscproto-1.2.2/* .h ; do
235
236
ln -sf ../$F X11/extensions/
236
237
done
237
- }
238
+ } || exit 1
238
239
239
240
# =========== randrproto ===========
240
241
@@ -248,7 +249,7 @@ cd $BUILDDIR
248
249
for F in randrproto-1.4.0/* .h ; do
249
250
ln -sf ../$F X11/extensions/
250
251
done
251
- }
252
+ } || exit 1
252
253
253
254
# =========== xf86bigfontproto ===========
254
255
@@ -262,7 +263,7 @@ cd $BUILDDIR
262
263
for F in xf86bigfontproto-1.2.0/* .h ; do
263
264
ln -sf ../$F X11/extensions/
264
265
done
265
- }
266
+ } || exit 1
266
267
267
268
# =========== recordproto ===========
268
269
@@ -276,7 +277,7 @@ cd $BUILDDIR
276
277
for F in recordproto-1.14.2/* .h ; do
277
278
ln -sf ../$F X11/extensions/
278
279
done
279
- }
280
+ } || exit 1
280
281
281
282
# =========== libpixman-1.a ===========
282
283
@@ -298,7 +299,7 @@ make -j$NCPU V=1 2>&1 || exit 1
298
299
299
300
cd $BUILDDIR
300
301
ln -sf $BUILDDIR /pixman-0.30.2/pixman/.libs/libpixman-1.a $BUILDDIR /libpixman-1.a
301
- }
302
+ } || exit 1
302
303
303
304
# =========== libfontenc.a ===========
304
305
@@ -329,7 +330,7 @@ make -j$NCPU V=1 2>&1 || exit 1
329
330
cd $BUILDDIR
330
331
ln -sf ../libfontenc-1.1.2/include/X11/fonts/fontenc.h X11/fonts/
331
332
ln -sf libfontenc-1.1.2/src/.libs/libfontenc.a ./
332
- }
333
+ } || exit 1
333
334
334
335
# =========== libXfont.a ===========
335
336
@@ -368,7 +369,7 @@ ln -sf libXfont-1.4.6/src/.libs/libXfont.a ./
368
369
for F in libXfont-1.4.6/include/X11/fonts/* ; do
369
370
ln -sf ../$F X11/fonts/
370
371
done
371
- }
372
+ } || exit 1
372
373
373
374
# =========== libXau.a ==========
374
375
@@ -401,7 +402,7 @@ make -j$NCPU V=1 2>&1 || exit 1
401
402
cd $BUILDDIR
402
403
ln -sf libXau-1.0.8/.libs/libXau.a ./
403
404
ln -sf ../libXau-1.0.8/include/X11/Xauth.h X11/
404
- }
405
+ } || exit 1
405
406
406
407
# =========== libXdmcp.a ==========
407
408
@@ -434,7 +435,7 @@ make -j$NCPU V=1 2>&1 || exit 1
434
435
cd $BUILDDIR
435
436
ln -sf libXdmcp-1.1.1/.libs/libXdmcp.a ./
436
437
ln -sf ../libXdmcp-1.1.1/include/X11/Xdmcp.h X11/
437
- }
438
+ } || exit 1
438
439
439
440
# =========== xcbproto ===========
440
441
[ -e proto-1.8 ] || {
@@ -446,7 +447,7 @@ $BUILDDIR/setCrossEnvironment.sh \
446
447
$BUILDDIR /setCrossEnvironment.sh \
447
448
make -j$NCPU V=1 2>&1 || exit 1
448
449
cd $BUILDDIR
449
- }
450
+ } || exit 1
450
451
451
452
# =========== libxcb.a ==========
452
453
@@ -482,7 +483,7 @@ mkdir -p xcb
482
483
ln -sf ../libxcb-1.9.1/src/xcb.h xcb/
483
484
ln -sf ../libxcb-1.9.1/src/xproto.h xcb/
484
485
ln -sf ../libxcb-1.9.1/src/xcbext.h xcb/
485
- }
486
+ } || exit 1
486
487
487
488
[ -e libandroid_support.a ] || {
488
489
mkdir -p android_support
@@ -495,7 +496,7 @@ sh -c '$CC $CFLAGS -Drestrict=__restrict__ -ffunction-sections -fdata-sections \
495
496
ar rcs ../libandroid_support.a *.o' \
496
497
|| exit 1
497
498
cd $BUILDDIR
498
- }
499
+ } || exit 1
499
500
500
501
# =========== libX11.a ==========
501
502
@@ -535,7 +536,7 @@ ln -sf libX11-1.6.2/src/.libs/libX11.a ./
535
536
for F in libX11-1.6.2/include/X11/* .h ; do
536
537
ln -sf ../$F X11
537
538
done
538
- }
539
+ } || exit 1
539
540
540
541
# =========== libxkbfile.a ==========
541
542
@@ -571,7 +572,42 @@ ln -sf libxkbfile-1.0.8/src/.libs/libxkbfile.a ./
571
572
for F in libxkbfile-1.0.8/include/X11/extensions/* .h ; do
572
573
ln -sf ../$F X11/extensions/
573
574
done
574
- }
575
+ } || exit 1
576
+
577
+ # =========== xkbcomp binary ==========
578
+
579
+ [ -e xkbcomp ] || {
580
+ curl http://cgit.freedesktop.org/xorg/app/xkbcomp/snapshot/xkbcomp-1.2.4.tar.gz | tar xvz || exit 1
581
+
582
+ cd xkbcomp-1.2.4
583
+
584
+ [ -e configure ] || \
585
+ autoreconf -v --install \
586
+ || exit 1
587
+
588
+ env CFLAGS=" -isystem$BUILDDIR \
589
+ -include strings.h" \
590
+ LDFLAGS=" -L$BUILDDIR " \
591
+ LIBS=" -lxcb -lXau -lXdmcp -landroid_support -lX11" \
592
+ $BUILDDIR /setCrossEnvironment.sh \
593
+ ./configure \
594
+ --host=arm-linux-androideabi \
595
+ || exit 1
596
+
597
+ cp -f ` which libtool` ./
598
+
599
+ $BUILDDIR /setCrossEnvironment.sh \
600
+ sh -c ' ln -sf $CC gcc'
601
+
602
+ env PATH=` pwd` :$PATH \
603
+ $BUILDDIR /setCrossEnvironment.sh \
604
+ make -j$NCPU V=1 2>&1 || exit 1
605
+
606
+ cd $BUILDDIR
607
+ cp -f xkbcomp-1.2.4/xkbcomp ./
608
+ $BUILDDIR /setCrossEnvironment.sh \
609
+ sh -c ' $STRIP xkbcomp'
610
+ } || exit 1
575
611
576
612
# =========== xsdl ==========
577
613
@@ -582,7 +618,7 @@ ln -sf $NDK/sources/android/libportable/libs/armeabi-v7a/libportable.a $BUILDDIR
582
618
[ -z " $PACKAGE_NAME " ] && PACKAGE_NAME=X.org.server
583
619
584
620
[ -e Makefile ] || \
585
- env CFLAGS=" \
621
+ env CFLAGS=" -DDEBUG \
586
622
-isystem$BUILDDIR \
587
623
-include strings.h\
588
624
-include linux/time.h \
@@ -595,13 +631,14 @@ LDFLAGS="-L$BUILDDIR" \
595
631
LIBS=" -lfontenc -lfreetype -llog" \
596
632
../configure \
597
633
--host=arm-linux-androideabi \
598
- --prefix=/sdcard/Android/data/$PACKAGE_NAME /files/usr \
634
+ --prefix=$TARGET_DIR /usr \
635
+ --with-xkb-output=$TARGET_DIR /tmp \
599
636
--disable-xorg --disable-dmx --disable-xvfb --disable-xnest --disable-xquartz --disable-xwin \
600
637
--disable-xephyr --disable-xfake --disable-xfbdev --disable-unit-tests --disable-tslib \
601
638
--disable-shm --disable-mitshm --disable-dri --disable-dri2 --disable-glx --disable-xf86vidmode \
602
639
--enable-xsdl --enable-kdrive --enable-kdrive-kbd --enable-kdrive-mouse --enable-kdrive-evdev \
603
640
|| exit 1
604
641
605
- { ./setCrossEnvironment.sh make -j$NCPU V=1 2>&1 || exit 1 ; } | tee build.log
642
+ ./setCrossEnvironment.sh make -j$NCPU V=1 2>&1 || exit 1
606
643
607
644
exit 0
0 commit comments