blob: 33a68999da72dfc507a5d3c9e652ec8aec30a521 (
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
|
do_libc_get() {
CT_GetFile "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src" \
http://downloads.sourceforge.net/sourceforge/mingw
if [ -n "${CT_MINGW_DIRECTX}" ]; then
CT_GetFile "directx-devel" \
http://www.libsdl.org/extras/win32/common
fi
if [ -n "${CT_MINGW_OPENGL}" ]; then
CT_GetFile "opengl-devel" \
http://www.libsdl.org/extras/win32/common
fi
if [ -n "${CT_MINGW_PDCURSES}" ]; then
CT_GetFile "PDCurses-${CT_MINGW_PDCURSES_VERSION}" \
http://downloads.sourceforge.net/sourceforge/pdcurses
fi
if [ -n "${CT_MINGW_GNURX}" ]; then
CT_GetFile "mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src" \
http://downloads.sourceforge.net/sourceforge/mingw
fi
}
do_libc_extract() {
CT_Extract "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src"
if [ -n "${CT_MINGW_PDCURSES}" ]; then
CT_Extract "PDCurses-${CT_MINGW_PDCURSES_VERSION}"
CT_Patch "PDCurses" "${CT_MINGW_PDCURSES_VERSION}"
fi
if [ -n "${CT_MINGW_GNURX}" ]; then
CT_Extract "mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src"
CT_Patch "mingw-libgnurx" "${CT_MINGW_GNURX_VERSION}"
fi
}
do_libc_check_config() {
:
}
do_libc_start_files() {
CT_DoStep INFO "Installing C library headers"
CT_DoLog EXTRA "Installing MinGW Runtime headers"
mkdir -p "${CT_HEADERS_DIR}"
cp -r ${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32/include/* \
${CT_HEADERS_DIR}
# It seems mingw is strangely set up to look into /mingw instead of
# /usr (notably when looking for the headers). This symlink is
# here to workaround this, and seems to be here to last... :-/
CT_DoExecLog ALL ln -sv "usr" "${CT_SYSROOT_DIR}/mingw"
CT_EndStep
}
do_libc() {
CT_DoStep INFO "Building MinGW files"
CT_DoLog EXTRA "Configuring W32-API"
mkdir -p "${CT_BUILD_DIR}/build-w32api"
cd "${CT_BUILD_DIR}/build-w32api"
CT_DoExecLog CFG \
CFLAGS="-I${CT_HEADERS_DIR}" \
LDFLAGS="-L${CT_SYSROOT_DIR}/lib" \
"${CT_SRC_DIR}/w32api-${CT_W32API_VERSION}-mingw32/configure" \
--prefix=${CT_SYSROOT_DIR} \
--includedir=${CT_HEADERS_DIR} \
--host=${CT_TARGET}
CT_DoLog EXTRA "Building W32-API"
CT_DoExecLog ALL make ${JOBSFLAGS}
CT_DoLog EXTRA "Installing W32-API"
CT_DoExecLog ALL make install
CT_DoLog EXTRA "Configuring MinGW Runtime"
mkdir -p "${CT_BUILD_DIR}/build-mingwrt"
cd "${CT_BUILD_DIR}/build-mingwrt"
CT_DoExecLog CFG \
CFLAGS="-I${CT_HEADERS_DIR}" \
LDFLAGS="-L${CT_SYSROOT_DIR}/lib" \
"${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32/configure" \
--prefix=${CT_SYSROOT_DIR}/ \
--includedir=${CT_HEADERS_DIR} \
--host=${CT_TARGET}
CT_DoLog EXTRA "Building MinGW Runtime"
CT_DoExecLog ALL make ${JOBSFLAGS}
CT_DoLog EXTRA "Installing MinGW Runtime"
CT_DoExecLog ALL make install
CT_EndStep
}
do_libc_finish() {
CT_DoStep INFO "Installing MinGW Development libraries"
CT_Pushd "${CT_SYSROOT_DIR}"
if [ -n "${CT_MINGW_DIRECTX}" ]; then
CT_DoLog EXTRA "Installing DirectX development package"
CT_Extract nochdir "directx-devel"
fi
if [ -n "${CT_MINGW_OPENGL}" ]; then
CT_DoLog EXTRA "Installing OpenGL development package"
CT_Extract nochdir "opengl-devel"
fi
CT_Popd
if [ -n "${CT_MINGW_PDCURSES}" ]; then
CT_DoLog EXTRA "Building PDCurses development files"
mkdir -p "${CT_BUILD_DIR}/build-pdcurses"
cd "${CT_BUILD_DIR}/build-pdcurses"
make -f ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/win32/mingwin32.mak libs \
PDCURSES_SRCDIR=${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION} \
CROSS_COMPILE=${CT_TARGET}-
CT_DoLog EXTRA "Installing PDCurses development files"
chmod a+r ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/*.h
cp ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/*.h \
${CT_HEADERS_DIR}/
cp pdcurses.a ${CT_SYSROOT_DIR}/lib/libpdcurses.a
cp pdcurses.a ${CT_SYSROOT_DIR}/lib/libncurses.a
fi
if [ -n "${CT_MINGW_GNURX}" ]; then
CT_DoLog EXTRA "Configuring GnuRX development files"
mkdir -p "${CT_BUILD_DIR}/build-gnurx"
cd "${CT_BUILD_DIR}/build-gnurx"
CT_DoExecLog CFG \
CFLAGS="${CT_CFLAGS_FOR_TARGET}" \
"${CT_SRC_DIR}/mingw-libgnurx-${CT_MINGW_GNURX_VERSION}/configure" \
--build=${CT_BUILD} \
--host=${CT_TARGET} \
--prefix=${CT_SYSROOT_DIR} \
--includedir=${CT_HEADERS_DIR} \
--enable-shared \
--enable-static
CT_DoLog EXTRA "Building GnuRX development files"
CT_DoExecLog ALL make ${JOBSFLAGS}
CT_DoLog EXTRA "Installing GnuRX development files"
CT_DoExecLog ALL make install-dev
fi
CT_EndStep
}
|