diff options
-rw-r--r-- | .travis.yml | 22 | ||||
-rw-r--r-- | .travis/targets/distcheck.sh | 1 | ||||
-rw-r--r-- | Makefile.am | 105 | ||||
-rw-r--r-- | configure.ac | 17 |
4 files changed, 81 insertions, 64 deletions
diff --git a/.travis.yml b/.travis.yml index c148698..80136d3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ -dist: trusty sudo: required language: c +compiler: gcc addons: apt: @@ -11,10 +11,6 @@ addons: - rpm - valgrind -compiler: - - clang - - gcc - env: - TARGET=valgrind - TARGET=distcheck @@ -25,23 +21,23 @@ env: - TARGET=win64 matrix: - exclude: - - compiler: clang - env: TARGET=dist-srpm - - compiler: clang - env: TARGET=github-lambda + include: - compiler: clang - env: TARGET=make-embedded + env: TARGET=valgrind - compiler: clang - env: TARGET=win32 + env: TARGET=distcheck - compiler: clang - env: TARGET=win64 + env: TARGET=distcheck + os: osx install: gem install ronn before_script: - git fetch --unshallow - ./autogen.sh + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install cmocka; fi + - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install xz; fi script: - ./.travis/build.sh diff --git a/.travis/targets/distcheck.sh b/.travis/targets/distcheck.sh index 06a0ba3..104893b 100644 --- a/.travis/targets/distcheck.sh +++ b/.travis/targets/distcheck.sh @@ -5,7 +5,6 @@ build() { --disable-silent-rules \ --enable-ronn \ --enable-tests \ - --enable-valgrind \ --enable-git-receiver \ --enable-make \ --enable-runserver diff --git a/Makefile.am b/Makefile.am index 8cd56e5..2937817 100644 --- a/Makefile.am +++ b/Makefile.am @@ -452,17 +452,21 @@ if USE_CMOCKA check_PROGRAMS += \ tests/blogc/check_content_parser \ tests/blogc/check_datetime_parser \ - tests/blogc/check_loader \ tests/blogc/check_renderer \ tests/blogc/check_source_parser \ tests/blogc/check_template_parser \ tests/common/check_config_parser \ tests/common/check_error \ - tests/common/check_stdin \ tests/common/check_utf8 \ tests/common/check_utils \ $(NULL) +if USE_LD_WRAP +check_PROGRAMS += \ + tests/blogc/check_loader \ + tests/common/check_stdin \ + $(NULL) + tests_blogc_check_loader_SOURCES = \ tests/blogc/check_loader.c \ $(NULL) @@ -482,6 +486,25 @@ tests_blogc_check_loader_LDADD = \ libblogc_common.la \ $(NULL) +tests_common_check_stdin_SOURCES = \ + tests/common/check_stdin.c \ + $(NULL) + +tests_common_check_stdin_CFLAGS = \ + $(CMOCKA_CFLAGS) \ + $(NULL) + +tests_common_check_stdin_LDFLAGS = \ + -no-install \ + -Wl,--wrap=fgetc \ + $(NULL) + +tests_common_check_stdin_LDADD = \ + $(CMOCKA_LIBS) \ + libblogc_common.la \ + $(NULL) +endif + tests_blogc_check_content_parser_SOURCES = \ tests/blogc/check_content_parser.c \ $(NULL) @@ -606,24 +629,6 @@ tests_common_check_error_LDADD = \ libblogc_common.la \ $(NULL) -tests_common_check_stdin_SOURCES = \ - tests/common/check_stdin.c \ - $(NULL) - -tests_common_check_stdin_CFLAGS = \ - $(CMOCKA_CFLAGS) \ - $(NULL) - -tests_common_check_stdin_LDFLAGS = \ - -no-install \ - -Wl,--wrap=fgetc \ - $(NULL) - -tests_common_check_stdin_LDADD = \ - $(CMOCKA_LIBS) \ - libblogc_common.la \ - $(NULL) - tests_common_check_utf8_SOURCES = \ tests/common/check_utf8.c \ $(NULL) @@ -659,6 +664,7 @@ tests_common_check_utils_LDADD = \ $(NULL) if BUILD_RUNSERVER +if USE_LD_WRAP check_PROGRAMS += \ tests/blogc-runserver/check_httpd_utils \ tests/blogc-runserver/check_mime \ @@ -702,46 +708,52 @@ tests_blogc_runserver_check_mime_LDADD = \ libblogc_common.la \ $(NULL) endif +endif if BUILD_GIT_RECEIVER check_PROGRAMS += \ tests/blogc-git-receiver/check_pre_receive_parser \ - tests/blogc-git-receiver/check_post_receive \ tests/blogc-git-receiver/check_shell_command_parser \ $(NULL) -tests_blogc_git_receiver_check_pre_receive_parser_SOURCES = \ - tests/blogc-git-receiver/check_pre_receive_parser.c \ +if USE_LD_WRAP +check_PROGRAMS += \ + tests/blogc-git-receiver/check_post_receive \ $(NULL) -tests_blogc_git_receiver_check_pre_receive_parser_CFLAGS = \ +tests_blogc_git_receiver_check_post_receive_SOURCES = \ + tests/blogc-git-receiver/check_post_receive.c \ + $(NULL) + +tests_blogc_git_receiver_check_post_receive_CFLAGS = \ $(CMOCKA_CFLAGS) \ $(NULL) -tests_blogc_git_receiver_check_pre_receive_parser_LDFLAGS = \ +tests_blogc_git_receiver_check_post_receive_LDFLAGS = \ -no-install \ + -Wl,--wrap=realpath \ $(NULL) -tests_blogc_git_receiver_check_pre_receive_parser_LDADD = \ +tests_blogc_git_receiver_check_post_receive_LDADD = \ $(CMOCKA_LIBS) \ libblogc_git_receiver.la \ libblogc_common.la \ $(NULL) +endif -tests_blogc_git_receiver_check_post_receive_SOURCES = \ - tests/blogc-git-receiver/check_post_receive.c \ +tests_blogc_git_receiver_check_pre_receive_parser_SOURCES = \ + tests/blogc-git-receiver/check_pre_receive_parser.c \ $(NULL) -tests_blogc_git_receiver_check_post_receive_CFLAGS = \ +tests_blogc_git_receiver_check_pre_receive_parser_CFLAGS = \ $(CMOCKA_CFLAGS) \ $(NULL) -tests_blogc_git_receiver_check_post_receive_LDFLAGS = \ +tests_blogc_git_receiver_check_pre_receive_parser_LDFLAGS = \ -no-install \ - -Wl,--wrap=realpath \ $(NULL) -tests_blogc_git_receiver_check_post_receive_LDADD = \ +tests_blogc_git_receiver_check_pre_receive_parser_LDADD = \ $(CMOCKA_LIBS) \ libblogc_git_receiver.la \ libblogc_common.la \ @@ -769,43 +781,48 @@ endif if BUILD_MAKE_LIB check_PROGRAMS += \ tests/blogc-make/check_atom \ - tests/blogc-make/check_exec \ tests/blogc-make/check_rules \ tests/blogc-make/check_settings \ $(NULL) -tests_blogc_make_check_atom_SOURCES = \ - tests/blogc-make/check_atom.c \ +if USE_LD_WRAP +check_PROGRAMS += \ + tests/blogc-make/check_exec \ $(NULL) -tests_blogc_make_check_atom_CFLAGS = \ +tests_blogc_make_check_exec_SOURCES = \ + tests/blogc-make/check_exec.c \ + $(NULL) + +tests_blogc_make_check_exec_CFLAGS = \ $(CMOCKA_CFLAGS) \ $(NULL) -tests_blogc_make_check_atom_LDFLAGS = \ +tests_blogc_make_check_exec_LDFLAGS = \ -no-install \ + -Wl,--wrap=access \ $(NULL) -tests_blogc_make_check_atom_LDADD = \ +tests_blogc_make_check_exec_LDADD = \ $(CMOCKA_LIBS) \ libblogc_make.la \ libblogc_common.la \ $(NULL) +endif -tests_blogc_make_check_exec_SOURCES = \ - tests/blogc-make/check_exec.c \ +tests_blogc_make_check_atom_SOURCES = \ + tests/blogc-make/check_atom.c \ $(NULL) -tests_blogc_make_check_exec_CFLAGS = \ +tests_blogc_make_check_atom_CFLAGS = \ $(CMOCKA_CFLAGS) \ $(NULL) -tests_blogc_make_check_exec_LDFLAGS = \ +tests_blogc_make_check_atom_LDFLAGS = \ -no-install \ - -Wl,--wrap=access \ $(NULL) -tests_blogc_make_check_exec_LDADD = \ +tests_blogc_make_check_atom_LDADD = \ $(CMOCKA_LIBS) \ libblogc_make.la \ libblogc_common.la \ diff --git a/configure.ac b/configure.ac index dec5c3d..9e6d7eb 100644 --- a/configure.ac +++ b/configure.ac @@ -144,6 +144,7 @@ AC_ARG_ENABLE([tests], AS_HELP_STRING([--disable-tests], [disable unit tests, ignoring presence of cmocka])) AS_IF([test "x$enable_tests" != "xno"], [ PKG_CHECK_MODULES([CMOCKA], [cmocka], [ + have_cmocka=yes AC_MSG_CHECKING([whether the linker supports -wrap]) save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -Wl,-wrap,exit" @@ -154,13 +155,16 @@ AS_IF([test "x$enable_tests" != "xno"], [ [exit(1);] ]) ], [ - have_cmocka=yes + have_ld_wrap=yes ], [ - have_cmocka=no + have_ld_wrap=no ], [ - have_cmocka=no + have_ld_wrap=no + ]) + AC_MSG_RESULT([$have_ld_wrap]) + AS_IF([test "x$have_ld_wrap" = "xyes"],, [ + AC_MSG_WARN([linker does not supports -wrap. tests requiring it will be disabled]) ]) - AC_MSG_RESULT([$have_cmocka]) LDFLAGS="$save_LDFLAGS" ], [ have_cmocka=no @@ -169,9 +173,9 @@ AS_IF([test "x$enable_tests" != "xno"], [ have_tests=no TESTS="disabled" AS_IF([test "x$enable_tests" = "xyes"], [ - AC_MSG_ERROR([tests requested but cmocka was not found or -wrap is not supported by your linker]) + AC_MSG_ERROR([tests requested but cmocka was not found]) ], [ - AC_MSG_WARN([cmocka was not found or -wrap is not supported by your linker, disabling tests]) + AC_MSG_WARN([cmocka was not found, disabling tests]) ]) ]) @@ -211,6 +215,7 @@ AS_IF([test "x$enable_tests" != "xno"], [ ]) AM_CONDITIONAL([BUILD_TESTS], [test "x$have_tests" = "xyes"]) AM_CONDITIONAL([USE_CMOCKA], [test "x$have_cmocka" = "xyes"]) +AM_CONDITIONAL([USE_LD_WRAP], [test "x$have_ld_wrap" = "xyes"]) AM_CONDITIONAL([USE_BGR_DEPS], [test "x$have_bgr_deps" = "xyes"]) BASH="$ac_cv_path_bash" AC_SUBST(BASH) |