From aa76dec33af3d93f046143e7e7c853c49ef54380 Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Wed, 1 Jun 2011 21:39:18 +0200 Subject: [PATCH] unit tests: more build adjustments --- configure.ac | 2 ++ lib/Makefile.am | 18 +++++++++--------- tests/Makefile.am | 9 ++++++++- tests/unit/Makefile.am | 19 +++++-------------- tests/unit/Makefile.inc | 2 +- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/configure.ac b/configure.ac index 819008eec..c8c0d42c0 100644 --- a/configure.ac +++ b/configure.ac @@ -305,6 +305,8 @@ AM_CONDITIONAL(NO_UNDEFINED, test x$need_no_undefined = xyes) CURL_CHECK_CURLDEBUG AM_CONDITIONAL(CURLDEBUG, test x$want_curldebug = xyes) +AM_CONDITIONAL(BUILD_UNITTESTS, test x$want_curldebug = xyes) + dnl ********************************************************************** dnl Compilation based checks should not be done before this point. dnl ********************************************************************** diff --git a/lib/Makefile.am b/lib/Makefile.am index d3dc9af91..f2e54db95 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -106,7 +106,7 @@ endif # For the full guide on libcurl ABI rules, see docs/libcurl/ABI if NO_UNDEFINED -# The -no-undefined flag is CRUCIAL for this to build fine on Cygwin. +# The -no-undefined flag is crucial to build fine on some platforms UNDEF = -no-undefined endif @@ -116,18 +116,18 @@ if MIMPURE MIMPURE = -mimpure-text endif -LINKFLAGS=$(UNDEF) $(MIMPURE) $(LIBCURL_LIBS) +libcurl_la_LDFLAGS = $(UNDEF) $(VERSIONINFO) $(MIMPURE) $(LIBCURL_LIBS) -libcurl_la_LDFLAGS = $(LINKFLAGS) $(VERSIONINFO) - -# as unit testing will compile and link everything an extra time, we only -# do it if debug is enabled -if CURLDEBUG +# unit testing static library built only along with unit tests +if BUILD_UNITTESTS noinst_LTLIBRARIES = libcurlu.la -libcurlu_la_CPPFLAGS = $(AM_CPPFLAGS) -DUNITTESTS -libcurlu_la_LDFLAGS = -static $(LINKFLAGS) +else +noinst_LTLIBRARIES = endif +libcurlu_la_CPPFLAGS = $(AM_CPPFLAGS) -DUNITTESTS +libcurlu_la_LDFLAGS = -static $(LIBCURL_LIBS) + # Makefile.inc provides the CSOURCES and HHEADERS defines include Makefile.inc diff --git a/tests/Makefile.am b/tests/Makefile.am index 045349350..85dd7999a 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -30,7 +30,14 @@ EXTRA_DIST = ftpserver.pl httpserver.pl secureserver.pl runtests.pl getpart.pm \ serverhelp.pm tftpserver.pl rtspserver.pl directories.pm symbol-scan.pl \ certs/srp-verifier-conf certs/srp-verifier-db -SUBDIRS = data server libtest unit +if BUILD_UNITTESTS +BUILD_UNIT = unit +else +BUILD_UNIT = +endif + +SUBDIRS = data server libtest $(BUILD_UNIT) +DIST_SUBDIRS = $(SUBDIRS) unit PERLFLAGS = -I$(srcdir) diff --git a/tests/unit/Makefile.am b/tests/unit/Makefile.am index c77a516d5..d290a1dc7 100644 --- a/tests/unit/Makefile.am +++ b/tests/unit/Makefile.am @@ -48,30 +48,21 @@ INCLUDES = -I$(top_builddir)/include/curl \ -I$(top_builddir)/include \ -I$(top_srcdir)/include \ -I$(top_builddir)/lib \ - -I$(top_srcdir)/lib \ + -I$(top_srcdir)/lib \ -I$(top_srcdir)/tests/libtest endif -if CURLDEBUG - EXTRA_DIST = Makefile.inc LDADD = $(top_builddir)/lib/libcurlu.la @CURL_LIBS@ DEPENDENCIES = $(top_builddir)/lib/libcurlu.la AM_CPPFLAGS = -DUNITTESTS -# Makefile.inc provides the source defines (TESTUTIL, SUPPORTFILES, -# noinst_PROGRAMS, lib*_SOURCES, and lib*_CFLAGS) +# Makefile.inc provides neat definitions include Makefile.inc -if NO_UNDEFINED -# The -no-undefined flag is crucial to build fine on some platforms -UNDEF = -no-undefined -endif - - +if BUILD_UNITTESTS +noinst_PROGRAMS = $(UNITPROGS) else -# do nothing if debug was not enabled -all: - +noinst_PROGRAMS = endif diff --git a/tests/unit/Makefile.inc b/tests/unit/Makefile.inc index ff85e7b37..da24f4c2e 100644 --- a/tests/unit/Makefile.inc +++ b/tests/unit/Makefile.inc @@ -5,7 +5,7 @@ UNITFILES = curlcheck.h \ $(top_srcdir)/tests/libtest/first.c # These are all unit test programs -noinst_PROGRAMS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 +UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 unit1300_SOURCES = unit1300.c $(UNITFILES) unit1301_SOURCES = unit1301.c $(UNITFILES)