diorcet@3112: # Copyright 2012 Yann Diorcet diorcet@3112: # Licensed under the GPL v2. See COPYING in the root of this package bartvdrmeulen@2018: diorcet@3112: do_libc_get() { diorcet@3112: CT_GetFile "mingw-w64-v${CT_WINAPI_VERSION}" \ diorcet@3112: http://downloads.sourceforge.net/sourceforge/mingw-w64 bartvdrmeulen@2017: } bartvdrmeulen@2017: bartvdrmeulen@2017: do_libc_extract() { diorcet@3112: CT_Extract "mingw-w64-v${CT_WINAPI_VERSION}" diorcet@3112: CT_Pushd "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/" diorcet@3112: CT_Patch nochdir mingw-w64 "${CT_WINAPI_VERSION}" diorcet@3112: CT_Popd bartvdrmeulen@2017: } bartvdrmeulen@2017: bartvdrmeulen@2017: do_libc_check_config() { bartvdrmeulen@2017: : bartvdrmeulen@2017: } bartvdrmeulen@2017: yann@2269: do_libc_start_files() { diorcet@3112: local -a sdk_opts diorcet@3112: bartvdrmeulen@2017: CT_DoStep INFO "Installing C library headers" bartvdrmeulen@2017: diorcet@3112: case "${CT_MINGW_DIRECTX}:${CT_MINGW_DDK}" in diorcet@3112: y:y) sdk_opts+=( "--enable-sdk=all" );; diorcet@3112: y:) sdk_opts+=( "--enable-sdk=directx" );; diorcet@3112: :y) sdk_opts+=( "--enable-sdk=ddk" );; diorcet@3112: :) ;; diorcet@3112: esac diorcet@3112: diorcet@3112: CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-headers" diorcet@3112: diorcet@3112: CT_DoLog EXTRA "Configuring Headers" diorcet@3112: diorcet@3112: CT_DoExecLog CFG \ diorcet@3112: "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/mingw-w64-headers/configure" \ diorcet@3112: --build=${CT_BUILD} \ diorcet@3112: --host=${CT_TARGET} \ diorcet@3112: --prefix=/usr \ diorcet@3112: "${sdk_opts[@]}" diorcet@3112: diorcet@3112: CT_DoLog EXTRA "Compile Headers" diorcet@3112: CT_DoExecLog ALL make diorcet@3112: diorcet@3112: CT_DoLog EXTRA "Installing Headers" diorcet@3112: CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} diorcet@3112: diorcet@3112: CT_Popd yann@2282: yann@2282: # It seems mingw is strangely set up to look into /mingw instead of yann@2282: # /usr (notably when looking for the headers). This symlink is yann@2282: # here to workaround this, and seems to be here to last... :-/ diorcet@3112: CT_DoExecLog ALL ln -sv "usr/${CT_TARGET}" "${CT_SYSROOT_DIR}/mingw" bartvdrmeulen@2017: bartvdrmeulen@2017: CT_EndStep bartvdrmeulen@2017: } bartvdrmeulen@2017: bartvdrmeulen@2017: do_libc() { diorcet@3112: CT_DoStep INFO "Building mingw-w64 files" bartvdrmeulen@2017: diorcet@3112: CT_DoLog EXTRA "Configuring mingw-w64-crt" bartvdrmeulen@2017: diorcet@3112: CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-crt" bartvdrmeulen@2017: diorcet@3112: CT_DoExecLog CFG \ diorcet@3112: "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/mingw-w64-crt/configure" \ diorcet@3112: --prefix=/usr \ diorcet@3112: --build=${CT_BUILD} \ diorcet@3112: --host=${CT_TARGET} \ bartvdrmeulen@2017: diorcet@3112: CT_DoLog EXTRA "Building mingw-w64-crt" yann@2275: CT_DoExecLog ALL make ${JOBSFLAGS} bartvdrmeulen@2017: diorcet@3112: CT_DoLog EXTRA "Installing mingw-w64-crt" diorcet@3112: CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} bartvdrmeulen@2017: bartvdrmeulen@2017: CT_EndStep bartvdrmeulen@2017: } bartvdrmeulen@2017: bartvdrmeulen@2017: do_libc_finish() { diorcet@3112: : bartvdrmeulen@2017: }