1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-21 23:58:49 -05:00

configure: Windows cross-compilation fixes

BUILDING_LIBCURL and CURL_STATICLIB are no longer defined in curl_config.h,
configure will generate appropriate conditionals so that mentioned symbols
get defined and used in Makefiles at compilation time
This commit is contained in:
Yang Tse 2012-04-09 21:24:16 +02:00
parent 01b0f1061d
commit 21423497ef
9 changed files with 60 additions and 45 deletions

View File

@ -236,21 +236,18 @@ esac
AC_MSG_RESULT($mimpure) AC_MSG_RESULT($mimpure)
AM_CONDITIONAL(MIMPURE, test x$mimpure = xyes) AM_CONDITIONAL(MIMPURE, test x$mimpure = xyes)
dnl 'STATICLIB' is, in spite of its name, not generic but only for static-only
dnl builds on Windows
AM_CONDITIONAL(STATICLIB, false)
AC_MSG_CHECKING([if we need BUILDING_LIBCURL]) AC_MSG_CHECKING([if we need BUILDING_LIBCURL])
use_cppflag_building_libcurl="no"
use_cppflag_curl_staticlib="no"
case $host in case $host in
*-*-mingw*) *-*-mingw*)
AC_DEFINE(BUILDING_LIBCURL, 1, [when building libcurl itself])
AC_MSG_RESULT(yes) AC_MSG_RESULT(yes)
use_cppflag_building_libcurl="yes"
AC_MSG_CHECKING([if we need CURL_STATICLIB]) AC_MSG_CHECKING([if we need CURL_STATICLIB])
if test "X$enable_shared" = "Xno" if test "X$enable_shared" = "Xno"
then then
AC_DEFINE(CURL_STATICLIB, 1, [when not building a shared library])
AC_MSG_RESULT(yes) AC_MSG_RESULT(yes)
AM_CONDITIONAL(STATICLIB, true) use_cppflag_curl_staticlib="yes"
else else
AC_MSG_RESULT(no) AC_MSG_RESULT(no)
fi fi
@ -259,6 +256,8 @@ case $host in
AC_MSG_RESULT(no) AC_MSG_RESULT(no)
;; ;;
esac esac
AM_CONDITIONAL(USE_CPPFLAG_BUILDING_LIBCURL, test x$use_cppflag_building_libcurl = xyes)
AM_CONDITIONAL(USE_CPPFLAG_CURL_STATICLIB, test x$use_cppflag_curl_staticlib = xyes)
# Determine whether all dependent libraries must be specified when linking # Determine whether all dependent libraries must be specified when linking
if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" = "Xno" if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" = "Xno"

View File

@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___ # | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____| # \___|\___/|_| \_\_____|
# #
# Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. # Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
# #
# This software is licensed as described in the file COPYING, which # This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms # you should have received as part of this distribution. The terms
@ -40,12 +40,12 @@ INCLUDES = -I$(top_builddir)/include/curl \
LIBDIR = $(top_builddir)/lib LIBDIR = $(top_builddir)/lib
if STATICLIB AM_CPPFLAGS = -DCURL_NO_OLDIES
# we need this define when building with a static lib on Windows
STATICCPPFLAGS = -DCURL_STATICLIB
endif
CPPFLAGS = -DCURL_NO_OLDIES $(STATICCPPFLAGS) # Mostly for Windows build targets, when using static libcurl
if USE_CPPFLAG_CURL_STATICLIB
AM_CPPFLAGS += -DCURL_STATICLIB
endif
# Dependencies # Dependencies
LDADD = $(LIBDIR)/libcurl.la LDADD = $(LIBDIR)/libcurl.la

View File

@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___ # | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____| # \___|\___/|_| \_\_____|
# #
# Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. # Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
# #
# This software is licensed as described in the file COPYING, which # This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms # you should have received as part of this distribution. The terms
@ -77,6 +77,18 @@ INCLUDES = -I$(top_builddir)/include/curl \
-I$(top_srcdir)/lib -I$(top_srcdir)/lib
endif endif
AM_CPPFLAGS =
# Mostly for Windows build targets, when building libcurl library
if USE_CPPFLAG_BUILDING_LIBCURL
AM_CPPFLAGS += -DBUILDING_LIBCURL
endif
# Mostly for Windows build targets, when building static libcurl
if USE_CPPFLAG_CURL_STATICLIB
AM_CPPFLAGS += -DCURL_STATICLIB
endif
if SONAME_BUMP if SONAME_BUMP
# #
# Bumping of SONAME conditionally may seem like a weird thing to do, and yeah # Bumping of SONAME conditionally may seem like a weird thing to do, and yeah

View File

@ -1,4 +1,5 @@
/* config-symbian.h. Manually generated. */ #ifndef HEADER_CURL_CONFIG_SYMBIAN_H
#define HEADER_CURL_CONFIG_SYMBIAN_H
/*************************************************************************** /***************************************************************************
* _ _ ____ _ * _ _ ____ _
* Project ___| | | | _ \| | * Project ___| | | | _ \| |
@ -6,7 +7,7 @@
* | (__| |_| | _ <| |___ * | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____| * \___|\___/|_| \_\_____|
* *
* Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
* *
* This software is licensed as described in the file COPYING, which * This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms * you should have received as part of this distribution. The terms
@ -21,8 +22,9 @@
* *
***************************************************************************/ ***************************************************************************/
/* when building libcurl itself */ /* ================================================================ */
/* #undef BUILDING_LIBCURL */ /* Hand crafted config file for Symbian */
/* ================================================================ */
/* Location of default ca bundle */ /* Location of default ca bundle */
/* #define CURL_CA_BUNDLE "/etc/pki/tls/certs/ca-bundle.crt"*/ /* #define CURL_CA_BUNDLE "/etc/pki/tls/certs/ca-bundle.crt"*/
@ -72,9 +74,6 @@
/* Use Windows LDAP implementation */ /* Use Windows LDAP implementation */
/* #undef CURL_LDAP_WIN */ /* #undef CURL_LDAP_WIN */
/* when not building a shared library */
/* #undef CURL_STATICLIB */
/* your Entropy Gathering Daemon socket pathname */ /* your Entropy Gathering Daemon socket pathname */
/* #undef EGD_SOCKET */ /* #undef EGD_SOCKET */
@ -830,3 +829,5 @@
/* if OpenSSL is in use */ /* if OpenSSL is in use */
#define USE_OPENSSL #define USE_OPENSSL
#endif #endif
#endif /* HEADER_CURL_CONFIG_SYMBIAN_H */

View File

@ -1,5 +1,5 @@
#ifndef __LIBCONFIGTPF_H #ifndef HEADER_CURL_CONFIG_TPF_H
#define __LIBCONFIGTPF_H #define HEADER_CURL_CONFIG_TPF_H
/*************************************************************************** /***************************************************************************
* _ _ ____ _ * _ _ ____ _
* Project ___| | | | _ \| | * Project ___| | | | _ \| |
@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___ * | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____| * \___|\___/|_| \_\_____|
* *
* Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
* *
* This software is licensed as described in the file COPYING, which * This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms * you should have received as part of this distribution. The terms
@ -23,7 +23,7 @@
***************************************************************************/ ***************************************************************************/
/* ================================================================ */ /* ================================================================ */
/* lib/config-tpf.h - Hand crafted config file for TPF */ /* Hand crafted config file for TPF */
/* ================================================================ */ /* ================================================================ */
/* ---------------------------------------------------------------- */ /* ---------------------------------------------------------------- */
@ -32,9 +32,6 @@
/* NOTE: Refer also to the .mak file for some of the flags below */ /* NOTE: Refer also to the .mak file for some of the flags below */
/* when building libcurl itself */
/* #undef BUILDING_LIBCURL */
/* to disable cookies support */ /* to disable cookies support */
/* #undef CURL_DISABLE_COOKIES */ /* #undef CURL_DISABLE_COOKIES */
@ -65,9 +62,6 @@
/* to disable verbose strings */ /* to disable verbose strings */
/* #undef CURL_DISABLE_VERBOSE_STRINGS */ /* #undef CURL_DISABLE_VERBOSE_STRINGS */
/* when not building a shared library */
/* #undef CURL_STATICLIB */
/* lber dynamic library file */ /* lber dynamic library file */
/* #undef DL_LBER_FILE */ /* #undef DL_LBER_FILE */
@ -779,4 +773,4 @@
#endif #endif
#endif /* __LIBCONFIGTPF_H */ #endif /* HEADER_CURL_CONFIG_TPF_H */

View File

@ -1,5 +1,5 @@
#ifndef __LIB_CONFIG_VXWORKS_H #ifndef HEADER_CURL_CONFIG_VXWORKS_H
#define __LIB_CONFIG_VXWORKS_H #define HEADER_CURL_CONFIG_VXWORKS_H
/*************************************************************************** /***************************************************************************
* _ _ ____ _ * _ _ ____ _
* Project ___| | | | _ \| | * Project ___| | | | _ \| |
@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___ * | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____| * \___|\___/|_| \_\_____|
* *
* Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
* *
* This software is licensed as described in the file COPYING, which * This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms * you should have received as part of this distribution. The terms
@ -23,12 +23,9 @@
***************************************************************************/ ***************************************************************************/
/* =============================================================== */ /* =============================================================== */
/* lib/config-vxworks.h - Hand crafted config file for VxWorks */ /* Hand crafted config file for VxWorks */
/* =============================================================== */ /* =============================================================== */
/* when building libcurl itself */
/* #undef BUILDING_LIBCURL */
/* Location of default ca bundle */ /* Location of default ca bundle */
/* #undef CURL_CA_BUNDLE */ /* #undef CURL_CA_BUNDLE */
@ -83,9 +80,6 @@
/* Use Windows LDAP implementation */ /* Use Windows LDAP implementation */
/* #undef CURL_LDAP_WIN */ /* #undef CURL_LDAP_WIN */
/* when not building a shared library */
/* #undef CURL_STATICLIB */
/* your Entropy Gathering Daemon socket pathname */ /* your Entropy Gathering Daemon socket pathname */
/* #undef EGD_SOCKET */ /* #undef EGD_SOCKET */
@ -952,4 +946,4 @@
/* the signed version of size_t */ /* the signed version of size_t */
/* #undef ssize_t */ /* #undef ssize_t */
#endif /* __LIB_CONFIG_VXWORKS_H */ #endif /* HEADER_CURL_CONFIG_VXWORKS_H */

View File

@ -44,6 +44,11 @@ INCLUDES = -I$(top_builddir)/include/curl \
bin_PROGRAMS = curl bin_PROGRAMS = curl
# Mostly for Windows build targets, when using static libcurl
if USE_CPPFLAG_CURL_STATICLIB
AM_CPPFLAGS = -DCURL_STATICLIB
endif
include Makefile.inc include Makefile.inc
# This might hold -Werror # This might hold -Werror

View File

@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___ # | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____| # \___|\___/|_| \_\_____|
# #
# Copyright (C) 1998 - 2010, Daniel Stenberg, <daniel@haxx.se>, et al. # Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
# #
# This software is licensed as described in the file COPYING, which # This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms # you should have received as part of this distribution. The terms
@ -57,6 +57,11 @@ test1022.pl Makefile.inc
LDADD = $(top_builddir)/lib/libcurl.la @CURL_LIBS@ LDADD = $(top_builddir)/lib/libcurl.la @CURL_LIBS@
DEPENDENCIES = $(top_builddir)/lib/libcurl.la DEPENDENCIES = $(top_builddir)/lib/libcurl.la
# Mostly for Windows build targets, when using static libcurl
if USE_CPPFLAG_CURL_STATICLIB
AM_CPPFLAGS = -DCURL_STATICLIB
endif
# Makefile.inc provides the source defines (TESTUTIL, SUPPORTFILES, # Makefile.inc provides the source defines (TESTUTIL, SUPPORTFILES,
# noinst_PROGRAMS, lib*_SOURCES, and lib*_CFLAGS) # noinst_PROGRAMS, lib*_SOURCES, and lib*_CFLAGS)
include Makefile.inc include Makefile.inc

View File

@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___ # | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____| # \___|\___/|_| \_\_____|
# #
# Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al. # Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
# #
# This software is licensed as described in the file COPYING, which # This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms # you should have received as part of this distribution. The terms
@ -58,6 +58,11 @@ LDADD = $(top_builddir)/lib/libcurlu.la @LDFLAGS@ @LIBCURL_LIBS@ @LIBS@
DEPENDENCIES = $(top_builddir)/lib/libcurlu.la DEPENDENCIES = $(top_builddir)/lib/libcurlu.la
AM_CPPFLAGS = -DUNITTESTS AM_CPPFLAGS = -DUNITTESTS
# Mostly for Windows build targets, when using static libcurl
if USE_CPPFLAG_CURL_STATICLIB
AM_CPPFLAGS += -DCURL_STATICLIB
endif
# Makefile.inc provides neat definitions # Makefile.inc provides neat definitions
include Makefile.inc include Makefile.inc