scripts/build/libc/mingw.sh
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Thu Dec 27 12:53:32 2012 +0100 (2012-12-27)
changeset 3153 f6740f9e42de
parent 2580 46dd211a7fd5
child 3162 e51eb0a614c7
permissions -rw-r--r--
scripts/addToolsVersion: handle elf2flt

The one was missing from the list.

It is very improbable that we ever need it, as elf2flt does no release,
and we always get it from CVS head. But for the sake of consistency, we
just add it.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
     1 # Copyright 2012 Yann Diorcet
     2 # Licensed under the GPL v2. See COPYING in the root of this package
     3 
     4 do_libc_get() { 
     5     CT_GetFile "mingw-w64-v${CT_WINAPI_VERSION}" \
     6         http://downloads.sourceforge.net/sourceforge/mingw-w64
     7 }
     8 
     9 do_libc_extract() {
    10     CT_Extract "mingw-w64-v${CT_WINAPI_VERSION}"
    11     CT_Pushd "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/"
    12     CT_Patch nochdir mingw-w64 "${CT_WINAPI_VERSION}"
    13     CT_Popd
    14 }
    15 
    16 do_libc_check_config() {
    17     :
    18 }
    19 
    20 do_libc_start_files() {
    21     local -a sdk_opts
    22 
    23     CT_DoStep INFO "Installing C library headers"
    24 
    25     case "${CT_MINGW_DIRECTX}:${CT_MINGW_DDK}" in
    26         y:y)    sdk_opts+=( "--enable-sdk=all"     );;
    27         y:)     sdk_opts+=( "--enable-sdk=directx" );;
    28         :y)     sdk_opts+=( "--enable-sdk=ddk"     );;
    29         :)      ;;
    30     esac
    31 
    32     CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-headers"
    33 
    34     CT_DoLog EXTRA "Configuring Headers"
    35 
    36     CT_DoExecLog CFG        \
    37     "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/mingw-w64-headers/configure" \
    38         --build=${CT_BUILD} \
    39         --host=${CT_TARGET} \
    40         --prefix=/usr       \
    41         "${sdk_opts[@]}"
    42 
    43     CT_DoLog EXTRA "Compile Headers"
    44     CT_DoExecLog ALL make
    45 
    46     CT_DoLog EXTRA "Installing Headers"
    47     CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR}
    48     
    49     CT_Popd
    50 
    51     # It seems mingw is strangely set up to look into /mingw instead of
    52     # /usr (notably when looking for the headers). This symlink is
    53     # here to workaround this, and seems to be here to last... :-/
    54     CT_DoExecLog ALL ln -sv "usr/${CT_TARGET}" "${CT_SYSROOT_DIR}/mingw"
    55 
    56     CT_EndStep
    57 }
    58 
    59 do_libc() {
    60     CT_DoStep INFO "Building mingw-w64 files"
    61 
    62     CT_DoLog EXTRA "Configuring mingw-w64-crt"
    63 
    64     CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-crt"
    65 
    66     CT_DoExecLog CFG                                                        \
    67     "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/mingw-w64-crt/configure" \
    68         --prefix=/usr                                                       \
    69         --build=${CT_BUILD}                                                 \
    70         --host=${CT_TARGET}                                                 \
    71 
    72     CT_DoLog EXTRA "Building mingw-w64-crt"
    73     CT_DoExecLog ALL make ${JOBSFLAGS}
    74 
    75     CT_DoLog EXTRA "Installing mingw-w64-crt"
    76     CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR}
    77 
    78     CT_EndStep
    79 }
    80 
    81 do_libc_finish() {
    82     :
    83 }