scripts/build/libc/mingw.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Jan 22 22:36:20 2011 +0100 (2011-01-22)
changeset 2278 e86826b8621a
parent 2275 9ab4392430ad
child 2282 fa5c70b11fec
permissions -rw-r--r--
libc: remove now unneeded do_libc_headers

do_libc_headers is now a noop, and is no longer used, so remove that step.

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