scripts/build/libc/mingw.sh
author Esben Haabendal <eha@doredevelopment.dk>
Sat Aug 14 23:21:06 2010 +0200 (2010-08-14)
changeset 2085 198c99380191
parent 2018 860de6018501
child 2086 32f29d1e2db1
permissions -rw-r--r--
libc/mingw: use pre-set headers dir

There is a variable that contains the headers directory,
so there's no need to re-compute it again.

[Yann E. MORIN: split the original patch]
bartvdrmeulen@2017
     1
do_libc_get() {
bartvdrmeulen@2017
     2
    CT_GetFile "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src" \
bartvdrmeulen@2017
     3
        http://downloads.sourceforge.net/sourceforge/mingw
bartvdrmeulen@2018
     4
bartvdrmeulen@2018
     5
    if [ -n "${CT_MINGW_DIRECTX}" ]; then
bartvdrmeulen@2018
     6
        CT_GetFile "directx-devel" \
bartvdrmeulen@2018
     7
            http://www.libsdl.org/extras/win32/common
bartvdrmeulen@2018
     8
    fi
bartvdrmeulen@2018
     9
    if [ -n "${CT_MINGW_OPENGL}" ]; then
bartvdrmeulen@2018
    10
        CT_GetFile "opengl-devel" \
bartvdrmeulen@2018
    11
            http://www.libsdl.org/extras/win32/common
bartvdrmeulen@2018
    12
    fi
bartvdrmeulen@2018
    13
    if [ -n "${CT_MINGW_PDCURSES}" ]; then
bartvdrmeulen@2018
    14
        CT_GetFile "PDCurses-${CT_MINGW_PDCURSES_VERSION}" \
bartvdrmeulen@2018
    15
            http://downloads.sourceforge.net/sourceforge/pdcurses
bartvdrmeulen@2018
    16
    fi
bartvdrmeulen@2018
    17
    if [ -n "${CT_MINGW_GNURX}" ]; then
bartvdrmeulen@2018
    18
        CT_GetFile "mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src" \
bartvdrmeulen@2018
    19
            http://downloads.sourceforge.net/sourceforge/mingw
bartvdrmeulen@2018
    20
    fi
bartvdrmeulen@2017
    21
}
bartvdrmeulen@2017
    22
bartvdrmeulen@2017
    23
do_libc_extract() {
bartvdrmeulen@2017
    24
    CT_Extract "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src"
bartvdrmeulen@2018
    25
bartvdrmeulen@2018
    26
    if [ -n "${CT_MINGW_PDCURSES}" ]; then
bartvdrmeulen@2018
    27
        CT_Extract "PDCurses-${CT_MINGW_PDCURSES_VERSION}"
bartvdrmeulen@2018
    28
        CT_Patch "PDCurses" "${CT_MINGW_PDCURSES_VERSION}"
bartvdrmeulen@2018
    29
    fi
bartvdrmeulen@2018
    30
    if [ -n "${CT_MINGW_GNURX}" ]; then
bartvdrmeulen@2018
    31
        CT_Extract "mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src"
bartvdrmeulen@2018
    32
        CT_Patch "mingw-libgnurx" "${CT_MINGW_GNURX_VERSION}"
bartvdrmeulen@2018
    33
    fi
bartvdrmeulen@2017
    34
}
bartvdrmeulen@2017
    35
bartvdrmeulen@2017
    36
do_libc_check_config() {
bartvdrmeulen@2017
    37
    :
bartvdrmeulen@2017
    38
}
bartvdrmeulen@2017
    39
bartvdrmeulen@2017
    40
do_libc_headers() {
bartvdrmeulen@2017
    41
    CT_DoStep INFO "Installing C library headers"
bartvdrmeulen@2017
    42
bartvdrmeulen@2017
    43
    CT_DoLog EXTRA "Installing MinGW Runtime headers"
eha@2085
    44
    mkdir -p "${CT_HEADERS_DIR}"
eha@2085
    45
    cp -r ${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32/include/* \
eha@2085
    46
          ${CT_HEADERS_DIR}
bartvdrmeulen@2017
    47
bartvdrmeulen@2017
    48
    CT_EndStep
bartvdrmeulen@2017
    49
}
bartvdrmeulen@2017
    50
bartvdrmeulen@2017
    51
do_libc_start_files() {
bartvdrmeulen@2017
    52
    :
bartvdrmeulen@2017
    53
}
bartvdrmeulen@2017
    54
bartvdrmeulen@2017
    55
do_libc() {
bartvdrmeulen@2017
    56
    CT_DoStep INFO "Building MinGW files"
bartvdrmeulen@2017
    57
bartvdrmeulen@2017
    58
    CT_DoLog EXTRA "Configuring W32-API"
bartvdrmeulen@2017
    59
bartvdrmeulen@2017
    60
    mkdir -p "${CT_BUILD_DIR}/build-w32api"
bartvdrmeulen@2017
    61
    cd "${CT_BUILD_DIR}/build-w32api"
bartvdrmeulen@2017
    62
eha@2085
    63
    CFLAGS="-I${CT_HEADERS_DIR}"                                  \
bartvdrmeulen@2017
    64
    LDFLAGS="-L${CT_SYSROOT_DIR}/lib"                             \
bartvdrmeulen@2017
    65
    CT_DoExecLog ALL                                              \
bartvdrmeulen@2017
    66
    "${CT_SRC_DIR}/w32api-${CT_W32API_VERSION}-mingw32/configure" \
bartvdrmeulen@2017
    67
        --prefix=${CT_SYSROOT_DIR}                                \
bartvdrmeulen@2017
    68
        --host=${CT_TARGET}
bartvdrmeulen@2017
    69
bartvdrmeulen@2017
    70
    CT_DoLog EXTRA "Building W32-API"
bartvdrmeulen@2017
    71
    CT_DoExecLog ALL make ${PARALLELMFLAGS}
bartvdrmeulen@2017
    72
bartvdrmeulen@2017
    73
    CT_DoLog EXTRA "Installing W32-API"
bartvdrmeulen@2017
    74
    CT_DoExecLog ALL make install
bartvdrmeulen@2017
    75
bartvdrmeulen@2017
    76
    CT_DoLog EXTRA "Configuring MinGW Runtime"
bartvdrmeulen@2017
    77
bartvdrmeulen@2017
    78
    mkdir -p "${CT_BUILD_DIR}/build-mingwrt"
bartvdrmeulen@2017
    79
    cd "${CT_BUILD_DIR}/build-mingwrt"
bartvdrmeulen@2017
    80
eha@2085
    81
    CFLAGS="-I${CT_HEADERS_DIR}"                                    \
bartvdrmeulen@2017
    82
    LDFLAGS="-L${CT_SYSROOT_DIR}/lib"                               \
bartvdrmeulen@2017
    83
    CT_DoExecLog ALL                                                \
bartvdrmeulen@2017
    84
    "${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32/configure" \
bartvdrmeulen@2017
    85
        --prefix=${CT_SYSROOT_DIR}/                                 \
bartvdrmeulen@2017
    86
        --host=${CT_TARGET}
bartvdrmeulen@2017
    87
bartvdrmeulen@2017
    88
    CT_DoLog EXTRA "Building MinGW Runtime"
bartvdrmeulen@2017
    89
    CT_DoExecLog ALL make ${PARALLELMFLAGS}
bartvdrmeulen@2017
    90
bartvdrmeulen@2017
    91
    CT_DoLog EXTRA "Installing MinGW Runtime"
bartvdrmeulen@2017
    92
    CT_DoExecLog ALL make install
bartvdrmeulen@2017
    93
bartvdrmeulen@2017
    94
    CT_EndStep
bartvdrmeulen@2017
    95
}
bartvdrmeulen@2017
    96
bartvdrmeulen@2017
    97
do_libc_finish() {
bartvdrmeulen@2018
    98
    CT_DoStep INFO "Installing MinGW Development libraries"
bartvdrmeulen@2018
    99
bartvdrmeulen@2018
   100
    CT_Pushd "${CT_SYSROOT_DIR}"
bartvdrmeulen@2018
   101
    if [ -n "${CT_MINGW_DIRECTX}" ]; then
bartvdrmeulen@2018
   102
        CT_DoLog EXTRA "Installing DirectX development package"
bartvdrmeulen@2018
   103
        CT_Extract nochdir "directx-devel"
bartvdrmeulen@2018
   104
    fi
bartvdrmeulen@2018
   105
    if [ -n "${CT_MINGW_OPENGL}" ]; then
bartvdrmeulen@2018
   106
        CT_DoLog EXTRA "Installing OpenGL development package"
bartvdrmeulen@2018
   107
        CT_Extract nochdir "opengl-devel"
bartvdrmeulen@2018
   108
    fi
bartvdrmeulen@2018
   109
    CT_Popd
bartvdrmeulen@2018
   110
bartvdrmeulen@2018
   111
    if [ -n "${CT_MINGW_PDCURSES}" ]; then
bartvdrmeulen@2018
   112
        CT_DoLog EXTRA "Building PDCurses development files"
bartvdrmeulen@2018
   113
        mkdir -p "${CT_BUILD_DIR}/build-pdcurses"
bartvdrmeulen@2018
   114
        cd "${CT_BUILD_DIR}/build-pdcurses"
bartvdrmeulen@2018
   115
bartvdrmeulen@2018
   116
        make -f ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/win32/mingwin32.mak libs \
bartvdrmeulen@2018
   117
            PDCURSES_SRCDIR=${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION} \
bartvdrmeulen@2018
   118
            CROSS_COMPILE=${CT_TARGET}-
bartvdrmeulen@2018
   119
bartvdrmeulen@2018
   120
        CT_DoLog EXTRA "Installing PDCurses development files"
bartvdrmeulen@2018
   121
        chmod a+r ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/*.h
bartvdrmeulen@2018
   122
        cp ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/*.h \
eha@2085
   123
           ${CT_HEADERS_DIR}
bartvdrmeulen@2018
   124
        cp pdcurses.a ${CT_SYSROOT_DIR}/lib/libpdcurses.a
bartvdrmeulen@2018
   125
        cp pdcurses.a ${CT_SYSROOT_DIR}/lib/libncurses.a
bartvdrmeulen@2018
   126
    fi
bartvdrmeulen@2018
   127
bartvdrmeulen@2018
   128
    if [ -n "${CT_MINGW_GNURX}" ]; then
bartvdrmeulen@2018
   129
        CT_DoLog EXTRA "Configuring GnuRX development files"
bartvdrmeulen@2018
   130
bartvdrmeulen@2018
   131
        mkdir -p "${CT_BUILD_DIR}/build-gnurx"
bartvdrmeulen@2018
   132
        cd "${CT_BUILD_DIR}/build-gnurx"
bartvdrmeulen@2018
   133
bartvdrmeulen@2018
   134
        CFLAGS="${CT_CFLAGS_FOR_TARGET}"                \
bartvdrmeulen@2018
   135
        CT_DoExecLog ALL                                \
bartvdrmeulen@2018
   136
        "${CT_SRC_DIR}/mingw-libgnurx-${CT_MINGW_GNURX_VERSION}/configure" \
bartvdrmeulen@2018
   137
            --build=${CT_BUILD}           \
bartvdrmeulen@2018
   138
            --host=${CT_TARGET}           \
bartvdrmeulen@2018
   139
            --prefix=${CT_SYSROOT_DIR}    \
bartvdrmeulen@2018
   140
            --enable-shared               \
bartvdrmeulen@2018
   141
            --enable-static
bartvdrmeulen@2018
   142
bartvdrmeulen@2018
   143
        CT_DoLog EXTRA "Building GnuRX development files"
bartvdrmeulen@2018
   144
        CT_DoExecLog ALL make ${PARALLELMFLAGS}
bartvdrmeulen@2018
   145
bartvdrmeulen@2018
   146
        CT_DoLog EXTRA "Installing GnuRX development files"
bartvdrmeulen@2018
   147
        CT_DoExecLog ALL make install-dev
bartvdrmeulen@2018
   148
    fi
bartvdrmeulen@2018
   149
bartvdrmeulen@2018
   150
    CT_EndStep
bartvdrmeulen@2017
   151
}
bartvdrmeulen@2017
   152