diff options
Diffstat (limited to 'scripts/build/libc/mingw.sh')
-rw-r--r-- | scripts/build/libc/mingw.sh | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/scripts/build/libc/mingw.sh b/scripts/build/libc/mingw.sh deleted file mode 100644 index eb04cb6..0000000 --- a/scripts/build/libc/mingw.sh +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 2012 Yann Diorcet -# Licensed under the GPL v2. See COPYING in the root of this package - -CT_WINAPI_VERSION_DOWNLOADED= - -do_libc_get() { - CT_DoStep INFO "Fetching mingw-w64 source for ${CT_WINAPI_VERSION}" - if [ "${CT_WINAPI_VERSION}" = "devel" ]; then - CT_GetGit "mingw-w64" "ref=HEAD" "git://git.code.sf.net/p/mingw-w64/mingw-w64" CT_WINAPI_VERSION_DOWNLOADED - CT_DoLog EXTRA "Fetched as ${CT_WINAPI_VERSION_DOWNLOADED}" - else - CT_GetFile "mingw-w64-v${CT_WINAPI_VERSION}" \ - http://downloads.sourceforge.net/sourceforge/mingw-w64 - CT_WINAPI_VERSION_DOWNLOADED=v${CT_WINAPI_VERSION} - fi - CT_EndStep -} - -do_libc_extract() { - CT_Extract "mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}" - CT_Pushd "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/" - CT_Patch nochdir mingw-w64 "${CT_WINAPI_VERSION_DOWNLOADED}" - CT_Popd -} - -do_set_mingw_install_prefix(){ - MINGW_INSTALL_PREFIX=/usr/${CT_TARGET} - if [[ ${CT_WINAPI_VERSION} == 2* ]]; then - MINGW_INSTALL_PREFIX=/usr - fi -} - -do_libc_start_files() { - local -a sdk_opts - - CT_DoStep INFO "Installing C library headers" - - case "${CT_MINGW_DIRECTX}:${CT_MINGW_DDK}" in - y:y) sdk_opts+=( "--enable-sdk=all" );; - y:) sdk_opts+=( "--enable-sdk=directx" );; - :y) sdk_opts+=( "--enable-sdk=ddk" );; - :) ;; - esac - - CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-headers" - - CT_DoLog EXTRA "Configuring Headers" - - do_set_mingw_install_prefix - CT_DoExecLog CFG \ - ${CONFIG_SHELL} \ - "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-headers/configure" \ - --build=${CT_BUILD} \ - --host=${CT_TARGET} \ - --prefix=${MINGW_INSTALL_PREFIX} \ - "${sdk_opts[@]}" - - CT_DoLog EXTRA "Compile Headers" - CT_DoExecLog ALL make - - CT_DoLog EXTRA "Installing Headers" - CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} - - CT_Popd - - # 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_TARGET}" "${CT_SYSROOT_DIR}/mingw" - - CT_EndStep -} - -do_check_mingw_vendor_tuple() -{ - if [[ ${CT_WINAPI_VERSION} == 4* ]]; then - CT_DoStep INFO "Checking vendor tuple configured in crosstool-ng .config" - if [[ ${CT_TARGET_VENDOR} == w64 ]]; then - CT_DoLog EXTRA "The tuple is set to '${CT_TARGET_VENDOR}', as recommended by mingw-64 team." - else - CT_DoLog WARN "WARNING! The tuple '${CT_TARGET_VENDOR}', is not equal to w64 and might break the toolchain! WARNING!" - fi - CT_EndStep - fi -} - -do_mingw_tools() { - for f in gendef genidl genlib genpeimg widl - do - if [[ ! -d "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-tools/${f}" ]]; then - continue; - fi - - CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-tools/${f}" - - CT_DoExecLog CFG \ - ${CONFIG_SHELL} \ - "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-tools/${f}/configure" \ - --build=${CT_BUILD} \ - --host=${CT_HOST} \ - --target=${CT_TARGET} \ - --program-prefix=${CT_TARGET}- \ - --prefix="${CT_PREFIX_DIR}" - - CT_DoExecLog ALL ${make} ${JOBSFLAGS} - - CT_DoExecLog ALL ${make} install - - CT_Popd - done -} - -do_libc() { - do_check_mingw_vendor_tuple - - CT_DoStep INFO "Building mingw-w64 files" - - CT_DoLog EXTRA "Configuring mingw-w64-crt" - - CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-crt" - - do_set_mingw_install_prefix - CT_DoExecLog CFG \ - ${CONFIG_SHELL} \ - "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-crt/configure" \ - --with-sysroot=${CT_SYSROOT_DIR} \ - --prefix=${MINGW_INSTALL_PREFIX} \ - --build=${CT_BUILD} \ - --host=${CT_TARGET} \ - - # mingw-w64-crt has a missing dependency occasionally breaking the - # parallel build. See https://github.com/crosstool-ng/crosstool-ng/issues/246 - # Do not pass ${JOBSFLAGS} - build serially. - CT_DoLog EXTRA "Building mingw-w64-crt" - CT_DoExecLog ALL make - - CT_DoLog EXTRA "Installing mingw-w64-crt" - CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} - - if [[ ${CT_MINGW_TOOLS} == "y" ]]; then - CT_DoLog EXTRA "Installing mingw-w64 companion tools" - do_mingw_tools - fi - - CT_EndStep - - if [ "${CT_THREADS}" = "posix" ]; then - do_pthreads - fi -} - -do_libc_post_cc() { - : -} - -do_pthreads() { - CT_DoStep INFO "Building mingw-w64-winpthreads files" - - CT_DoLog EXTRA "Configuring mingw-w64-winpthreads" - - CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-winpthreads" - - CT_DoExecLog CFG \ - ${CONFIG_SHELL} \ - "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-libraries/winpthreads/configure" \ - --with-sysroot=${CT_SYSROOT_DIR} \ - --prefix=${MINGW_INSTALL_PREFIX} \ - --build=${CT_BUILD} \ - --host=${CT_TARGET} \ - - CT_DoLog EXTRA "Building mingw-w64-winpthreads" - CT_DoExecLog ALL make ${JOBSFLAGS} - - CT_DoLog EXTRA "Installing mingw-w64-winpthreads" - CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} - - CT_EndStep -} |