| 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}-src" |
| 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-src/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-src/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-src/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}-src/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 |
| } |
| |