X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=lib%2FMakefile.am;h=6dffbd9c920f88e2fc58d15200149f5a219314b7;hb=eb3e3833904e5db80c7cfcf940ae76a344ce0840;hp=06ae05df3837159e45001fca1ba3f34f84f7c42b;hpb=a5cb022407949c11ce2f50f89bc8990f420cf2f2;p=platform%2Fupstream%2Fcurl.git diff --git a/lib/Makefile.am b/lib/Makefile.am index 06ae05d..6dffbd9 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -5,7 +5,7 @@ # | (__| |_| | _ <| |___ # \___|\___/|_| \_\_____| # -# Copyright (C) 1998 - 2007, Daniel Stenberg, , et al. +# Copyright (C) 1998 - 2013, Daniel Stenberg, , et al. # # This software is licensed as described in the file COPYING, which # you should have received as part of this distribution. The terms @@ -18,146 +18,141 @@ # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY # KIND, either express or implied. # -# $Id$ ########################################################################### AUTOMAKE_OPTIONS = foreign nostdinc -DSP = curllib.dsp -VCPROJ = curllib.vcproj - DOCS = README.encoding README.memoryleak README.ares README.curlx \ - README.hostip README.multi_socket README.httpauth README.pipelining + README.hostip README.multi_socket README.httpauth README.pipelining \ + README.curl_off_t README.pingpong -EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 Makefile.riscos \ - $(DSP) curllib.dsw config-win32.h config-win32ce.h config-riscos.h \ - config-mac.h config.h.in ca-bundle.crt makefile.dj config.dos \ - libcurl.framework.make libcurl.plist libcurl.rc config-amigaos.h \ - amigaos.c amigaos.h makefile.amiga Makefile.netware nwlib.c nwos.c \ - libcurl.imp msvcproj.head msvcproj.foot config-win32ce.h \ - config-os400.h setup-os400.h \ - Makefile.Watcom config-tpf.h $(DOCS) $(VCPROJ) +CMAKE_DIST = CMakeLists.txt curl_config.h.cmake -CLEANFILES = $(DSP) $(VCPROJ) +EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 config-win32.h \ + config-win32ce.h config-riscos.h config-mac.h curl_config.h.in \ + makefile.dj config-dos.h libcurl.plist libcurl.rc config-amigaos.h \ + makefile.amiga Makefile.netware nwlib.c nwos.c config-win32ce.h \ + config-os400.h setup-os400.h config-symbian.h Makefile.Watcom \ + config-tpf.h $(DOCS) mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST) \ + firefox-db2pem.sh config-vxworks.h Makefile.vxworks checksrc.pl \ + objnames-test08.sh objnames-test10.sh objnames.inc lib_LTLIBRARIES = libcurl.la -LIBCURL_LIBS = @LIBCURL_LIBS@ - -# we use srcdir/include for the static global include files -# we use builddir/lib for the generated lib/config.h file to get found -# we use srcdir/lib for the lib-private header files -INCLUDES = -I$(top_srcdir)/include \ - -I$(top_builddir)/lib \ - -I$(top_srcdir)/lib +if BUILD_UNITTESTS +noinst_LTLIBRARIES = libcurlu.la +else +noinst_LTLIBRARIES = +endif -VERSION=-version-info 4:0:0 +# This might hold -Werror +CFLAGS += @CURL_CFLAG_EXTRAS@ -# This flag accepts an argument of the form current[:revision[:age]]. So, -# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to -# 1. -# -# If either revision or age are omitted, they default to 0. Also note that age -# must be less than or equal to the current interface number. +# Specify our include paths here, and do it relative to $(top_srcdir) and +# $(top_builddir), to ensure that these paths which belong to the library +# being currently built and tested are searched before the library which +# might possibly already be installed in the system. # -# Here are a set of rules to help you update your library version information: -# -# 1.Start with version information of 0:0:0 for each libtool library. +# $(top_builddir)/include/curl for generated curlbuild.h included from curl.h +# $(top_builddir)/include for generated curlbuild.h inc. from lib/curl_setup.h +# $(top_srcdir)/include is for libcurl's external include files +# $(top_builddir)/lib is for libcurl's generated lib/curl_config.h file +# $(top_srcdir)/lib for libcurl's lib/curl_setup.h and other "private" files +# $(top_builddir)/ares is for in-tree c-ares's generated ares_build.h file +# $(top_srcdir)/ares is for in-tree c-ares's external include files + +AM_CPPFLAGS = -I$(top_builddir)/include/curl \ + -I$(top_builddir)/include \ + -I$(top_srcdir)/include \ + -I$(top_builddir)/lib \ + -I$(top_srcdir)/lib + +if USE_EMBEDDED_ARES +AM_CPPFLAGS += -I$(top_builddir)/ares \ + -I$(top_srcdir)/ares +endif + +# Prevent LIBS from being used for all link targets +LIBS = $(BLANK_AT_MAKETIME) + +if SONAME_BUMP # -# 2.Update the version information only immediately before a public release of -# your software. More frequent updates are unnecessary, and only guarantee -# that the current interface number gets larger faster. +# Bumping of SONAME conditionally may seem like a weird thing to do, and yeah +# it is. The problem is that we try to avoid the bump as hard as possible, but +# yet it is still necessary for a few rare situations. The configure script will +# attempt to figure out these situations, and it can be forced to consider this +# to be such a case! See README.curl_off_t for further details. # -# 3.If the library source code has changed at all since the last update, then -# increment revision (c:r+1:a) +# This conditional soname bump SHOULD be removed at next "proper" bump. # -# 4.If any interfaces have been added, removed, or changed since the last -# update, increment current, and set revision to 0. (c+1:r=0:a) +VERSIONINFO=-version-info 8:0:3 +else +VERSIONINFO=-version-info 7:0:3 +endif + +# This flag accepts an argument of the form current[:revision[:age]]. So, +# passing -version-info 3:12:1 sets current to 3, revision to 12, and age to +# 1. # -# 5.If any interfaces have been added since the last public release, then -# increment age. (c:r:a+1) +# Here's the simplified rule guide on how to change -version-info: +# (current version is C:R:A) # -# 6.If any interfaces have been removed since the last public release, then -# set age to 0. (c:r:a=0) +# 1. if there are only source changes, use C:R+1:A +# 2. if interfaces were added use C+1:0:A+1 +# 3. if interfaces were removed, then use C+1:0:0 # +# For the full guide on libcurl ABI rules, see docs/libcurl/ABI + +AM_CPPFLAGS += -DBUILDING_LIBCURL +AM_LDFLAGS = +AM_CFLAGS = + +libcurl_la_CPPFLAGS_EXTRA = +libcurl_la_LDFLAGS_EXTRA = +libcurl_la_CFLAGS_EXTRA = + +if CURL_LT_SHLIB_USE_VERSION_INFO +libcurl_la_LDFLAGS_EXTRA += $(VERSIONINFO) +endif + +if CURL_LT_SHLIB_USE_NO_UNDEFINED +libcurl_la_LDFLAGS_EXTRA += -no-undefined +endif -if NO_UNDEFINED -# The -no-undefined flag is CRUCIAL for this to build fine on Cygwin. -UNDEF = -no-undefined +if CURL_LT_SHLIB_USE_MIMPURE_TEXT +libcurl_la_LDFLAGS_EXTRA += -mimpure-text endif -if MIMPURE -# This is for gcc on Solaris (8+ ?) to avoid "relocations remain against -# allocatable but non-writable sections" problems. -MIMPURE = -mimpure-text +if CURL_LT_SHLIB_USE_VERSIONED_SYMBOLS +libcurl_la_LDFLAGS_EXTRA += -Wl,--version-script=libcurl.vers endif -libcurl_la_LDFLAGS = $(UNDEF) $(VERSION) $(MIMPURE) $(LIBCURL_LIBS) +if USE_CPPFLAG_CURL_STATICLIB +libcurl_la_CPPFLAGS_EXTRA += -DCURL_STATICLIB +endif + +if DOING_CURL_SYMBOL_HIDING +libcurl_la_CPPFLAGS_EXTRA += -DCURL_HIDDEN_SYMBOLS +libcurl_la_CFLAGS_EXTRA += $(CFLAG_CURL_SYMBOL_HIDING) +endif + +libcurl_la_CPPFLAGS = $(AM_CPPFLAGS) $(libcurl_la_CPPFLAGS_EXTRA) +libcurl_la_LDFLAGS = $(AM_LDFLAGS) $(libcurl_la_LDFLAGS_EXTRA) $(LDFLAGS) $(LIBCURL_LIBS) +libcurl_la_CFLAGS = $(AM_CFLAGS) $(libcurl_la_CFLAGS_EXTRA) + +libcurlu_la_CPPFLAGS = $(AM_CPPFLAGS) -DCURL_STATICLIB -DUNITTESTS +libcurlu_la_LDFLAGS = $(AM_LDFLAGS) -static $(LIBCURL_LIBS) +libcurlu_la_CFLAGS = $(AM_CFLAGS) # Makefile.inc provides the CSOURCES and HHEADERS defines include Makefile.inc libcurl_la_SOURCES = $(CSOURCES) $(HHEADERS) +libcurlu_la_SOURCES = $(CSOURCES) $(HHEADERS) -WIN32SOURCES = $(CSOURCES) -WIN32HEADERS = $(HHEADERS) config-win32.h - -BUILT_SOURCES = $(top_builddir)/lib/ca-bundle.h +checksrc: + @@PERL@ $(top_srcdir)/lib/checksrc.pl -D$(top_srcdir)/lib $(CSOURCES) $(HHEADERS) -$(top_builddir)/lib/ca-bundle.h: Makefile.in Makefile - @if test -f $@; then \ - chmod 0644 $@; \ - fi - echo "/* This file is generated automatically */" > $@ -if CABUNDLE - echo '#define CURL_CA_BUNDLE @CURL_CA_BUNDLE@' >> $@ -else - echo '#undef CURL_CA_BUNDLE /* unknown */' >> $@ +if CURLDEBUG +# for debug builds, we scan the sources on all regular make invokes +all-local: checksrc endif - -install-data-hook: - @if test -n "@CURL_CA_BUNDLE@"; then \ - $(mkinstalldirs) `dirname $(DESTDIR)@CURL_CA_BUNDLE@`; \ - @INSTALL_DATA@ $(srcdir)/ca-bundle.crt $(DESTDIR)@CURL_CA_BUNDLE@; \ - fi - -# this hook is mainly for non-unix systems to build even if configure -# isn't run -dist-hook: - chmod 0644 $(distdir)/ca-bundle.h - echo "/* ca bundle path set in here*/" > $(distdir)/ca-bundle.h - -DSPOUT = | awk '{printf("%s\r\n", $$0)}' >> $(DSP) -VCPROJOUT = | awk '{printf("%s\r\n", $$0)}' >> $(VCPROJ) - -$(DSP): msvcproj.head msvcproj.foot Makefile.am - echo "creating $(DSP)" - @(cp $(srcdir)/msvcproj.head $(DSP); \ - echo "# Begin Group \"Source Files\"" $(DSPOUT); \ - for file in $(WIN32SOURCES); do \ - echo "# Begin Source File" $(DSPOUT); \ - echo "" $(DSPOUT); \ - echo "SOURCE=.\\"$$file $(DSPOUT); \ - echo "# End Source File" $(DSPOUT); \ - done; \ - echo "# End Group" $(DSPOUT); \ - echo "# Begin Group \"Header Files\"" $(DSPOUT); \ - for file in $(WIN32HEADERS); do \ - echo "# Begin Source File" $(DSPOUT); \ - echo "" $(DSPOUT); \ - echo "SOURCE=.\\"$$file $(DSPOUT); \ - echo "# End Source File" $(DSPOUT); \ - done; \ - echo "# End Group" $(DSPOUT); \ - cat $(srcdir)/msvcproj.foot $(DSPOUT) ) - -$(VCPROJ): vc8proj.head vc8proj.foot Makefile.am - echo "creating $(VCPROJ)" - @(cp $(srcdir)/vc8proj.head $(VCPROJ); \ - for file in $(WIN32SOURCES); do \ - echo "" $(VCPROJOUT); \ - done; \ - echo "" $(VCPROJOUT); \ - for file in $(WIN32HEADERS); do \ - echo "" $(VCPROJOUT); \ - done; \ - cat $(srcdir)/vc8proj.foot $(VCPROJOUT) )