diff options
Diffstat (limited to 'scripts/build')
-rw-r--r-- | scripts/build/cc/gcc.sh | 9 | ||||
-rw-r--r-- | scripts/build/kernel/mingw32.sh | 27 | ||||
-rw-r--r-- | scripts/build/libc/mingw.sh | 74 |
3 files changed, 109 insertions, 1 deletions
diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh index c4373c1..3fb6ca0 100644 --- a/scripts/build/cc/gcc.sh +++ b/scripts/build/cc/gcc.sh @@ -68,6 +68,8 @@ do_cc_core_pass_2() { ,,nptl) do_cc_core mode=shared build_libgcc=yes ;; + ,,win32) do_cc_core mode=static build_libgcc=yes + ;; *) if [ "${CT_CC_GCC_4_3_or_later}" = "y" ]; then do_cc_core mode=static build_libgcc=yes else @@ -361,7 +363,12 @@ do_cc() { extra_config+=("--disable-libgomp") fi else - extra_config+=("--enable-threads=posix") + if [ "${CT_THREADS}" = "win32" ]; then + extra_config+=("--enable-threads=win32") + extra_config+=("--disable-win32-registry") + else + extra_config+=("--enable-threads=posix") + fi fi if [ "${CT_CC_GCC_ENABLE_TARGET_OPTSPACE}" = "y" ]; then diff --git a/scripts/build/kernel/mingw32.sh b/scripts/build/kernel/mingw32.sh new file mode 100644 index 0000000..d10442b --- /dev/null +++ b/scripts/build/kernel/mingw32.sh @@ -0,0 +1,27 @@ +# This file declares functions to install the kernel headers for mingw +# Copyright 2009 Bart vdr. Meulen +# Licensed under the GPL v2. See COPYING in the root of this package + +CT_DoKernelTupleValues() { + CT_TARGET_KERNEL="mingw32" + CT_TARGET_SYS= +} + +do_kernel_get() { + CT_GetFile "w32api-${CT_W32API_VERSION}-mingw32-src" \ + http://downloads.sourceforge.net/sourceforge/mingw +} + +do_kernel_extract() { + CT_Extract "w32api-${CT_W32API_VERSION}-mingw32-src" +} + +do_kernel_headers() { + CT_DoStep INFO "Installing kernel headers" + + mkdir -p "${CT_SYSROOT_DIR}/include" + cp -r ${CT_SRC_DIR}/w32api-${CT_W32API_VERSION}-mingw32/include \ + ${CT_SYSROOT_DIR} + + CT_EndStep +} diff --git a/scripts/build/libc/mingw.sh b/scripts/build/libc/mingw.sh new file mode 100644 index 0000000..28d74d6 --- /dev/null +++ b/scripts/build/libc/mingw.sh @@ -0,0 +1,74 @@ +do_libc_get() { + CT_GetFile "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src" \ + http://downloads.sourceforge.net/sourceforge/mingw +} + +do_libc_extract() { + CT_Extract "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src" +} + +do_libc_check_config() { + : +} + +do_libc_headers() { + CT_DoStep INFO "Installing C library headers" + + CT_DoLog EXTRA "Installing MinGW Runtime headers" + mkdir -p "${CT_SYSROOT_DIR}/include" + cp -r ${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32/include \ + ${CT_SYSROOT_DIR} + + CT_EndStep +} + +do_libc_start_files() { + : +} + +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" + + CFLAGS="-I${CT_SYSROOT_DIR}/include" \ + LDFLAGS="-L${CT_SYSROOT_DIR}/lib" \ + CT_DoExecLog ALL \ + "${CT_SRC_DIR}/w32api-${CT_W32API_VERSION}-mingw32/configure" \ + --prefix=${CT_SYSROOT_DIR} \ + --host=${CT_TARGET} + + CT_DoLog EXTRA "Building W32-API" + CT_DoExecLog ALL make ${PARALLELMFLAGS} + + 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" + + CFLAGS="-I${CT_SYSROOT_DIR}/include" \ + LDFLAGS="-L${CT_SYSROOT_DIR}/lib" \ + CT_DoExecLog ALL \ + "${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32/configure" \ + --prefix=${CT_SYSROOT_DIR}/ \ + --host=${CT_TARGET} + + CT_DoLog EXTRA "Building MinGW Runtime" + CT_DoExecLog ALL make ${PARALLELMFLAGS} + + CT_DoLog EXTRA "Installing MinGW Runtime" + CT_DoExecLog ALL make install + + CT_EndStep +} + +do_libc_finish() { + : +} + |