From 427e1faf059e1405fd093b7ff8f9ce8f5f42048b Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 06:51:34 +0100 Subject: [PATCH 01/25] Fix wrong parenteses in runtest.c --- tests/runtest.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/runtest.c b/tests/runtest.c index d87a008..355c0dd 100644 --- a/tests/runtest.c +++ b/tests/runtest.c @@ -89,7 +89,7 @@ main(int argc, char * argv[]) if (_setUp && NULL != tearDown) { int _tearDown = tearDown(); - if ((! TEST_OK == _tearDown) && TEST_OK == result) { + if ((!(TEST_OK == _tearDown)) && TEST_OK == result) { result = _tearDown; } } From 65e471049514a3038de1782f6f8e5a2d32508f7a Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 06:52:54 +0100 Subject: [PATCH 02/25] Update mock class to latest changes in class system. --- tests/mock/mock_class.c | 2 +- tests/mock/mock_class.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/mock/mock_class.c b/tests/mock/mock_class.c index a387326..ef989bc 100644 --- a/tests/mock/mock_class.c +++ b/tests/mock/mock_class.c @@ -67,6 +67,6 @@ mockClone(void * _this, void * _base) } TR_INIT_IFACE(TR_Class, mockCtor, mockDtor, mockClone); -TR_CREATE_CLASS(MockClass, NULL, TR_IF(TR_Class)); +TR_CREATE_CLASS(MockClass, NULL, NULL, TR_IF(TR_Class)); // vim: set et ts=4 sw=4: diff --git a/tests/mock/mock_class.h b/tests/mock/mock_class.h index 5e12be2..8af7c39 100644 --- a/tests/mock/mock_class.h +++ b/tests/mock/mock_class.h @@ -36,6 +36,7 @@ void _reset(); TR_CLASS(MockClass) { int value; }; +TR_CLASSVARS_DECL(MockClass) {}; /** * ~~~ method declarations ~~~~~~~~ From 06ec6cd2ea7b45d21a4c736f225646105e22ef5d Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 06:54:51 +0100 Subject: [PATCH 03/25] Accept gconv 1.11 in m4 check. --- m4/gcov.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/m4/gcov.m4 b/m4/gcov.m4 index 2c303a1..5b44348 100644 --- a/m4/gcov.m4 +++ b/m4/gcov.m4 @@ -31,7 +31,7 @@ AC_DEFUN([AC_TDD_GCOV], AC_MSG_ERROR([ccache must be disabled when --enable-gcov option is used. You can disable ccache by setting environment variable CCACHE_DISABLE=1.]) fi - lcov_version_list="1.6 1.7 1.8 1.9 1.10" + lcov_version_list="1.6 1.7 1.8 1.9 1.10 1.11" AC_CHECK_PROG(LCOV, lcov, lcov) AC_CHECK_PROG(GENHTML, genhtml, genhtml) From b957416a65579978f45bc21910f4b947bbd6d785 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 06:57:56 +0100 Subject: [PATCH 04/25] Add m4 check for AMD platform. --- configure.ac | 3 +++ m4/chkamd.m4 | 6 ++++++ 2 files changed, 9 insertions(+) create mode 100644 m4/chkamd.m4 diff --git a/configure.ac b/configure.ac index 84f4909..0709117 100644 --- a/configure.ac +++ b/configure.ac @@ -21,6 +21,9 @@ AC_TDD_GCOV m4_include([m4/memopt.m4]) AC_MEM_OPT +m4_include([m4/chkamd.m4]) +AC_CHK_AM + # Checks for programs. AC_PROG_CXX AC_PROG_CC diff --git a/m4/chkamd.m4 b/m4/chkamd.m4 new file mode 100644 index 0000000..4f5d064 --- /dev/null +++ b/m4/chkamd.m4 @@ -0,0 +1,6 @@ +AC_DEFUN([AC_CHK_AMD], +[ + AM_CONDITIONAL(IS_AMD, test "AuthenticAMD" = "$(uname -i)") +]) + +# vim: set ft=m4 ts=2 sw=2: From 43c102b776e39ea6d52d2aa1e0d88b0a30201969 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:01:45 +0100 Subject: [PATCH 05/25] Add CI control file --- .gitlab-ci.yml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..11583a2 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,6 @@ +build: + script: + - ./bootstrap + - ./configure --enable-gcov + - make + - make coverage-html From d1d51c8a821eaeba1ed151a0bfd2e69189cb6223 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:04:06 +0100 Subject: [PATCH 06/25] Fix typo: AC_CHK_AM => AC_CHK_AMD --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 0709117..a37b980 100644 --- a/configure.ac +++ b/configure.ac @@ -22,7 +22,7 @@ m4_include([m4/memopt.m4]) AC_MEM_OPT m4_include([m4/chkamd.m4]) -AC_CHK_AM +AC_CHK_AMD # Checks for programs. AC_PROG_CXX From c3e878d833172f15c2f0843ad75709d9b02262b5 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:23:52 +0100 Subject: [PATCH 07/25] Use AMD check in test. --- tests/Makefile.am | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tests/Makefile.am b/tests/Makefile.am index ba61d03..e3c7702 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,11 +1,14 @@ ACLOCAL_AMFLAGS = -I m4 AUTOMAKE_OPTIONS = subdir-objects +if IS_AMD +else TESTS_ENVIRONMENT = valgrind \ --error-exitcode=123 \ --leak-check=full \ --suppressions=./suppress/external.supp \ --quiet +endif TESTS = classTest check_PROGRAMS = classTest @@ -51,15 +54,15 @@ coverage-html: clean clean-coverage check clean-coverage: clean-gcda clean-gcno $(LCOV) -d $(top_srcdir) -z -rm -rf coverage.info coverage.base coverage.run $(cov_dir) - + clean-gcda: @echo Removing old coverage results -find $(top_srcdir) -name '*.gcda' -print | xargs -r rm - + clean-gcno: @echo Removing old coverage results -find $(top_srcdir) -name '*.gcno' -print | xargs -r rm - + clean-local: clean-coverage endif # HAVE_GCOV From babfe67250baaab04725ee574c1a53377ec7463d Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:31:08 +0100 Subject: [PATCH 08/25] Try stages...for now my jobs are called like the stages I use... --- .gitlab-ci.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 11583a2..494cd62 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,15 @@ +stages: + - build + - test + build: + stage: build script: - ./bootstrap - ./configure --enable-gcov - make + +test: + stage: test + script: - make coverage-html From a979a1296270ddb8d079cef49db8bfb804ad9cde Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:35:07 +0100 Subject: [PATCH 09/25] Play with CI --- .gitlab-ci.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 494cd62..f0d54be 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,11 +2,13 @@ stages: - build - test +before_script: + - ./bootstrap + - ./configure --enable-gcov + build: stage: build script: - - ./bootstrap - - ./configure --enable-gcov - make test: From 2563ce86f6ebfe7447992920625b5cca1012d9df Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:36:47 +0100 Subject: [PATCH 10/25] Play with CI --- .gitlab-ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f0d54be..9f9cf72 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,11 +7,15 @@ before_script: - ./configure --enable-gcov build: - stage: build + stage: + - build + - test script: - make test: - stage: test + stage: + - build + - test script: - make coverage-html From 3be07c49f4cb3cfefc41e1c54981f8bb8dad0efc Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 07:47:16 +0100 Subject: [PATCH 11/25] Play with CI --- .gitlab-ci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9f9cf72..41b9da4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,13 +9,11 @@ before_script: build: stage: - build - - test script: - make test: stage: - - build - test script: - make coverage-html From da0d196a1869ba738eef620fa803d6321365782e Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 08:41:34 +0100 Subject: [PATCH 12/25] Version bump --- configure.ac | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index a37b980..db17cb5 100644 --- a/configure.ac +++ b/configure.ac @@ -3,14 +3,14 @@ AC_PREREQ([2.68]) AC_INIT([libtrbase], - [1.0.1], + [1.0.2], [Georg Hopp ]) LT_INIT AM_INIT_AUTOMAKE #AM_INIT_AUTOMAKE([subdir-objects]) AM_SILENT_RULES([yes]) -AC_COPYRIGHT([Copyright © 2013 Georg Hopp]) -AC_REVISION([1.0.1]) +AC_COPYRIGHT([Copyright © 2016 Georg Hopp]) +AC_REVISION([1.0.2]) AC_CONFIG_SRCDIR([src/interface.c]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) From 54e885a0f905fe522e53ffcbbf2129feca501984 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 08:46:28 +0100 Subject: [PATCH 13/25] Add dist job --- .gitlab-ci.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 41b9da4..ac1d6b3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ stages: - build - test + - deploy before_script: - ./bootstrap @@ -17,3 +18,9 @@ test: - test script: - make coverage-html + +dist: + stage: + - deploy + script: + - make dist From 80f94f32ae8efbf10257fc7ca3a9c25d416194c2 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 08:54:02 +0100 Subject: [PATCH 14/25] Add dist job --- .gitlab-ci.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ac1d6b3..980c32b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,19 +8,16 @@ before_script: - ./configure --enable-gcov build: - stage: - - build + stage: build script: - make test: - stage: - - test + stage: test script: - make coverage-html dist: - stage: - - deploy + stage: deploy script: - make dist From 7c19febdecf254b06f350a9a6794cdf9dd2d7374 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 09:02:58 +0100 Subject: [PATCH 15/25] Add artifacts. --- .gitlab-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 980c32b..93265df 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -19,5 +19,7 @@ test: dist: stage: deploy + artifacts: + paths: libtrbase-*.tar.gz script: - make dist From 524b7089cd6a044b938d213d62e3057e868e6c47 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 09:05:18 +0100 Subject: [PATCH 16/25] Add artifacts. --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 93265df..0242df5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,6 +20,7 @@ test: dist: stage: deploy artifacts: - paths: libtrbase-*.tar.gz + paths: + - libtrbase-*.tar.gz script: - make dist From e855694a9f27a4ccef7b6a9858971249830394cd Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 10:09:11 +0100 Subject: [PATCH 17/25] try manual artifacts upload as artifacts does not work, and moreover I want them outside of gitlab anyway --- .gitlab-ci.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0242df5..c2ec434 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -16,11 +16,12 @@ test: stage: test script: - make coverage-html + - ssh ci_upload@192.168.20.60 install -d trbase + - rsync -vaurl --delete tests/coverage ci_upload@192.168.20.60:~/trbase/ dist: stage: deploy - artifacts: - paths: - - libtrbase-*.tar.gz script: - make dist + - ssh ci_upload@192.168.20.60 install -d trbase/artifacts + - scp libtrbase-*.tar.gz ci_upload@192.168.20.60:~/trbase/artifacts From 9977a79e39200d5a7840913066a5e316d17fc8c0 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 12:01:15 +0100 Subject: [PATCH 18/25] try to figure out available env vars --- .gitlab-ci.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c2ec434..4f689f2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,15 +11,16 @@ build: stage: build script: - make + - set -test: +.test: stage: test script: - make coverage-html - ssh ci_upload@192.168.20.60 install -d trbase - rsync -vaurl --delete tests/coverage ci_upload@192.168.20.60:~/trbase/ -dist: +.dist: stage: deploy script: - make dist From a4bf4960df35ba43f9a05fd389cbd75fb3d124be Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 12:12:58 +0100 Subject: [PATCH 19/25] Use env var to specify coverage folder. --- .gitlab-ci.yml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4f689f2..96123ad 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,17 +11,22 @@ build: stage: build script: - make - - set -.test: +test: stage: test script: - make coverage-html - ssh ci_upload@192.168.20.60 install -d trbase - - rsync -vaurl --delete tests/coverage ci_upload@192.168.20.60:~/trbase/ + - > + rsync -vaurl --delete tests/coverage + ci_upload@192.168.20.60:~/trbase/coverage_${CI_BUILD_ID} + - > + ssh ci_upload@192.168.20.60 + ln -s trbase/coverage_${CI_BUILD_ID} coverage_latest -.dist: +dist: stage: deploy + only: tags script: - make dist - ssh ci_upload@192.168.20.60 install -d trbase/artifacts From 39c9864be8a7bad47eefc9a8414401d1177084d1 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 12:15:17 +0100 Subject: [PATCH 20/25] Use env var to specify coverage folder. --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 96123ad..c38fd6d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -26,7 +26,8 @@ test: dist: stage: deploy - only: tags + only: + - tags script: - make dist - ssh ci_upload@192.168.20.60 install -d trbase/artifacts From 1b3e96283ff4be4e4bd1517c0fe0eba8e8e81271 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 12:27:23 +0100 Subject: [PATCH 21/25] Use env var to specify coverage folder. --- .gitlab-ci.yml | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c38fd6d..dac4093 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,17 +12,31 @@ build: script: - make -test: +.coverage: &coverage + - make coverage-html + - ssh ci_upload@192.168.20.60 install -d trbase + +coverage:dev: stage: test + except: + - tags script: - - make coverage-html - - ssh ci_upload@192.168.20.60 install -d trbase + <<: *coverage - > - rsync -vaurl --delete tests/coverage + rsync -vaurl --delete tests/coverage/* ci_upload@192.168.20.60:~/trbase/coverage_${CI_BUILD_ID} - > ssh ci_upload@192.168.20.60 - ln -s trbase/coverage_${CI_BUILD_ID} coverage_latest + ln -s trbase/coverage_${CI_BUILD_ID} trbase/coverage_latest + +coverage:tag: + stage: test + only: + - tags + script: + <<: *coverage + - rsync -vaurl --delete tests/coverage ci_upload@192.168.20.60:~/trbase/ + - ssh ci_upload@192.168.20.60 ln -s trbase/coverage trbase/coverage_latest dist: stage: deploy From 5f544396bb4008900a9ded57e2ba3b59b21b4810 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 12:34:53 +0100 Subject: [PATCH 22/25] Use env var to specify coverage folder. --- .gitlab-ci.yml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dac4093..5b4aefb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,16 +12,13 @@ build: script: - make -.coverage: &coverage - - make coverage-html - - ssh ci_upload@192.168.20.60 install -d trbase - coverage:dev: stage: test except: - tags script: - <<: *coverage + - make coverage-html + - ssh ci_upload@192.168.20.60 install -d trbase - > rsync -vaurl --delete tests/coverage/* ci_upload@192.168.20.60:~/trbase/coverage_${CI_BUILD_ID} @@ -34,7 +31,8 @@ coverage:tag: only: - tags script: - <<: *coverage + - make coverage-html + - ssh ci_upload@192.168.20.60 install -d trbase - rsync -vaurl --delete tests/coverage ci_upload@192.168.20.60:~/trbase/ - ssh ci_upload@192.168.20.60 ln -s trbase/coverage trbase/coverage_latest From 422aa7ea783207dee04dd45c21c20e6a87acff7a Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 12:38:54 +0100 Subject: [PATCH 23/25] Use env var to specify coverage folder. --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5b4aefb..7547193 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ coverage:dev: - make coverage-html - ssh ci_upload@192.168.20.60 install -d trbase - > - rsync -vaurl --delete tests/coverage/* + rsync -vaurl --delete tests/coverage/*/ ci_upload@192.168.20.60:~/trbase/coverage_${CI_BUILD_ID} - > ssh ci_upload@192.168.20.60 From d306672af7900a76f1e03a24aab1a008d0615447 Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 14:02:03 +0100 Subject: [PATCH 24/25] Fix prefix setting in genhtml --- tests/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Makefile.am b/tests/Makefile.am index e3c7702..96ffac7 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -46,7 +46,7 @@ coverage-html: clean clean-coverage check $(LCOV) -d $(top_srcdir) \ -a ./coverage.base -a ./coverage.run \ -o coverage.info - LANG=C $(GENHTML) --prefix $(top_srcdir) \ + LANG=C $(GENHTML) --prefix $(PWD) \ --output-directory $(cov_dir) \ --title "$(PACKAGE_NAME) $(PACKAGE_VERSION)" \ --legend --branch-coverage --show-details coverage.run From cad7e8e73c6ffbd8aab875c3335e9d72a357f57f Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Fri, 25 Mar 2016 14:05:08 +0100 Subject: [PATCH 25/25] Forcefully change symlink to latest coverage reports. --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7547193..3c6a302 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -24,7 +24,7 @@ coverage:dev: ci_upload@192.168.20.60:~/trbase/coverage_${CI_BUILD_ID} - > ssh ci_upload@192.168.20.60 - ln -s trbase/coverage_${CI_BUILD_ID} trbase/coverage_latest + ln -sf trbase/coverage_${CI_BUILD_ID} trbase/coverage_latest coverage:tag: stage: test @@ -34,7 +34,7 @@ coverage:tag: - make coverage-html - ssh ci_upload@192.168.20.60 install -d trbase - rsync -vaurl --delete tests/coverage ci_upload@192.168.20.60:~/trbase/ - - ssh ci_upload@192.168.20.60 ln -s trbase/coverage trbase/coverage_latest + - ssh ci_upload@192.168.20.60 ln -sf trbase/coverage trbase/coverage_latest dist: stage: deploy