summaryrefslogtreecommitdiff
path: root/jhbuildrc.i686-w64-mingw32
blob: 807308739a68972808c36bfa537c8f232a3cca0f (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
#
# 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'