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
|
#
# jhbuildrc for building for mingw64 32-bit
#
moduleset = '/jhbuild/xorg.modules'
if 'TINDERBOX' in os.environ:
modules = [ 'xwin', 'The X Window System', 'extras', 'tests' ]
else:
modules = [ 'xwin', 'The X Window System' ]
# skip building stuff which isn't appropriate for Windows target
skip = [ 'applewmproto', 'libAppleWM',
'videoproto', 'xf86dgaproto', 'xf86driproto', 'xf86vidmodeproto', 'dri2proto', 'dri3proto',
'libXv', 'libXvMC', 'libXxf86dga', 'libXxf86dga', 'libXxf86vm', 'libxshmfence',
'libxkbui', 'libevdev', 'libpciaccess',
'app-xvinfo', 'app-xdriinfo', 'app-xgamma',
'The X Video Drivers', 'The X Input Drivers',
'mesa-drm', 'mesa-mesa', 'mesa-demos', 'mesa-glut', 'mesa-glu',
'libFS',
'app-ico',
'app-luit',
'app-rendercheck',
'app-rstart',
'app-sessreg',
'app-smproxy',
'app-transset',
'app-twm',
'app-x11perf',
'app-xconsole',
'app-xdm',
'app-xfs',
'app-xfsinfo',
'app-xinit',
'app-xkbevd',
'app-xman',
'app-xsm',
'app-xvidtune',
'app-xvinfo',
'app-xwininfo',
]
# libGL was not easily cross-compilable, can probably be removed from this list now
# some modules don't make much sense to build for mingw64
# some modules are provided with xming, so can be ported with some work...
build_policy = 'updated-deps'
if 'TINDERBOX' in os.environ:
nopoison = True
quiet_mode = True
#
os.environ['BUILD'] = 'i686-w64-mingw32'
os.environ['HOST'] = 'i686-w64-mingw32'
# All source modules will be here after the checkout
checkoutroot = '/jhbuild/checkout'
# All build takes place here
buildroot = os.path.join('/jhbuild', os.environ['HOST'], 'build')
# All installed stuff will be here
prefix = os.path.join('/jhbuild', os.environ['HOST'], 'install')
os.environ['ACLOCAL'] = 'aclocal -I ' + os.path.join(prefix, 'share', 'aclocal')
os.environ['PKG_CONFIG_PATH'] = os.path.join(prefix, 'lib', 'pkgconfig') + ':' + os.path.join(prefix, 'share', 'pkgconfig')
#os.environ['PKG_CONFIG_DEBUG_SPEW'] = '1'
os.environ['INSTALL'] = '/usr/bin/install-check'
os.environ['CFLAGS'] = '-g -O0 -fdiagnostics-show-option'
os.environ['CXXFLAGS'] = '-g -O0 -fdiagnostics-show-option'
os.environ['AUTOMAKE'] = 'automake --force-missing --copy'
#os.environ['V'] = '1'
# env vars to help some tests find things...
os.environ['JHBUILD_CHECKOUTROOT'] = checkoutroot
os.environ['JHBUILD_BUILDROOT'] = buildroot
os.environ['JHBUILD_PREFIX'] = prefix
autogenargs = '--cache-file=' + os.path.join('/jhbuild', os.environ['HOST'], 'configure-cache')
autogenargs += ' --build='+os.environ['BUILD']
autogenargs += ' --host='+os.environ['HOST']
# ipv6
# need to compile with WINVER of at least XP for getaddrinfo(), freeaddrinfo()
#autogenargs += ' --enable-ipv6'
#os.environ['CFLAGS'] += ' -DWINVER=0x0501'
module_autogenargs['xserver'] = autogenargs + ' -disable-glx'
module_autogenargs['xserver'] = module_autogenargs['xserver'] + ' --with-builderstring="Tag: `cd ' + checkoutroot + '/xorg/xserver ; git describe | tr -d \\n`"'
module_autogenargs['xserver'] = module_autogenargs['xserver'] + ' CFLAGS="-Wno-error=implicit-function-declaration ' + os.environ['CFLAGS'] + '"'
module_autogenargs['xkeyboard-config'] = autogenargs + ' --with-xkb-rules-symlink=xorg'
module_autogenargs['fontconfig'] = autogenargs + ' --enable-libxml2'
# must put pthread into LIBS when building pthread-stubs, as weak cleverness won't work...
os.environ['LIBS'] = '-lpthread'
# do not start xvfb for any testmodules
noxvfb = True
# can't run 'make check' when cross-compiling
makecheck = False
# AC_FUNC_STRNLEN guesses 'yes' when cross-compiling
os.environ['ac_cv_func_strnlen_working'] = 'no'
# AC_CHECK_FUNC can't find strncasecmp() because of stdcall linkage
os.environ['ac_cv_func_strncasecmp'] = 'yes'
# --enable-malloc0returnsnull
os.environ['xorg_cv_malloc0_returns_null'] = 'yes'
# AC_CHECK_FUNC finds unprototyped getpagesize in libgcc.a
os.environ['ac_cv_func_getpagesize'] = 'no'
# AC_CHECK_FUNC finds unprototyped usleep
os.environ['ac_cv_func_usleep'] = 'no'
|