From 6daf1fe37be5d21ede33317e3bb4d2aee11b5634 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Thu, 21 Jul 2022 23:12:26 +0200 Subject: [PATCH 01/14] update Makefile + format script --- format.sh | 2 +- src/parser/Makefile | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/format.sh b/format.sh index c5417847..f645403f 100755 --- a/format.sh +++ b/format.sh @@ -2,7 +2,7 @@ unamestr=$(uname) if [[ "$unamestr" == 'Darwin' ]]; then - clang_format="/usr/local/opt/llvm/bin/clang-format" + clang_format="$(brew --prefix llvm)/bin/clang-format" format_cmd="$clang_format -i -style=file '{}'" elif [[ "$unamestr" == 'Linux' ]]; then format_cmd="clang-format -i -style=file '{}'" diff --git a/src/parser/Makefile b/src/parser/Makefile index dbebc14e..3e1f3992 100644 --- a/src/parser/Makefile +++ b/src/parser/Makefile @@ -2,16 +2,18 @@ BISON?=bison FLEX?=flex +BREW=$(shell brew --prefix) + BISON_VERSION=$(shell $(BISON) --version | head -n 1 | grep -o '[0-9]\.[0-9]\+') BISON_VERSION_SUPPORTED=$(shell awk -v a=$(BISON_VERSION) -v b="3.0" 'BEGIN { print (a >= b) ? 1 : 0 }') ifneq ($(BISON_VERSION_SUPPORTED), 1) -$(error Bison version $(BISON_VERSION) not supported. If you are using OS X, `bison` uses the system default instead of the brew version. Run BISON=/usr/local/opt/bison/bin/bison make) +$(error Bison version $(BISON_VERSION) not supported. If you are using OS X, `bison` uses the system default instead of the brew version. Run BISON=$(BREW)/opt/bison/bin/bison make) endif FLEX_VERSION=$(shell $(FLEX) --version | head -n 1 | grep -o '[0-9]\.[0-9]\+') FLEX_VERSION_SUPPORTED=$(shell awk -v a=$(FLEX_VERSION) -v b="2.6" 'BEGIN { print (a >= b) ? 1 : 0 }') ifneq ($(FLEX_VERSION_SUPPORTED), 1) -$(error Flex version $(FLEX_VERSION) not supported. If you are using OS X, `flex` uses the system default instead of the brew version. Run FLEX=/usr/local/opt/flex/bin/flex make) +$(error Flex version $(FLEX_VERSION) not supported. If you are using OS X, `flex` uses the system default instead of the brew version. Run FLEX=$(BREW)/opt/flex/bin/flex make) endif all: bison_parser.cpp flex_lexer.cpp From 6d51ae2d618f66217f8818afb957c650ad95e365 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Fri, 22 Jul 2022 10:25:46 +0200 Subject: [PATCH 02/14] better error message --- src/parser/Makefile | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/parser/Makefile b/src/parser/Makefile index 3e1f3992..1a9d70d6 100644 --- a/src/parser/Makefile +++ b/src/parser/Makefile @@ -2,18 +2,25 @@ BISON?=bison FLEX?=flex -BREW=$(shell brew --prefix) +OS_TYPE=$(shell uname) +ifeq ($(OS_TYPE), Darwin) +BREW_PREFIX=$(shell brew --prefix) +BREW_INSTALLED=$(shell echo $(BREW_PREFIX) | wc -w | xargs) +ifeq ($(BREW_INSTALLED), 0) +$(error On macOS, Homebrew (see https://brew.sh) is required to install recent Bison and Flex versions) +endif +endif BISON_VERSION=$(shell $(BISON) --version | head -n 1 | grep -o '[0-9]\.[0-9]\+') BISON_VERSION_SUPPORTED=$(shell awk -v a=$(BISON_VERSION) -v b="3.0" 'BEGIN { print (a >= b) ? 1 : 0 }') ifneq ($(BISON_VERSION_SUPPORTED), 1) -$(error Bison version $(BISON_VERSION) not supported. If you are using OS X, `bison` uses the system default instead of the brew version. Run BISON=$(BREW)/opt/bison/bin/bison make) +$(error Bison version $(BISON_VERSION) not supported. If you are using macOS, `bison` uses the system default instead of the brew version. Run BISON=$(BREW_PREFIX)/opt/bison/bin/bison make) endif FLEX_VERSION=$(shell $(FLEX) --version | head -n 1 | grep -o '[0-9]\.[0-9]\+') FLEX_VERSION_SUPPORTED=$(shell awk -v a=$(FLEX_VERSION) -v b="2.6" 'BEGIN { print (a >= b) ? 1 : 0 }') ifneq ($(FLEX_VERSION_SUPPORTED), 1) -$(error Flex version $(FLEX_VERSION) not supported. If you are using OS X, `flex` uses the system default instead of the brew version. Run FLEX=$(BREW)/opt/flex/bin/flex make) +$(error Flex version $(FLEX_VERSION) not supported. If you are using macOS, `flex` uses the system default instead of the brew version. Run FLEX=$(BREW_PREFIX)/opt/flex/bin/flex make) endif all: bison_parser.cpp flex_lexer.cpp From 580efc1747a84714298c6553f123546b9b38dedc Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 15:13:27 +0200 Subject: [PATCH 03/14] add macOS CI stage and update to latest ubuntu --- .travis.yml | 36 ++++++++++++++++++++++++-------- test/test.sh | 58 ++++++++++++++++++++++++++++++++-------------------- 2 files changed, 63 insertions(+), 31 deletions(-) diff --git a/.travis.yml b/.travis.yml index 79dc657e..a193cde0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,7 +3,8 @@ language: cpp matrix: include: - - name: gcc-6 + - name: ubuntu16.04-gcc-6 + os: linux dist: xenial addons: apt: @@ -17,29 +18,46 @@ matrix: env: - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6" - - name: gcc-10 - dist: focal + - name: ubuntu22.04-gcc-12 + os: linux + dist: jammy addons: apt: packages: - - g++-10 + - g++-12 - valgrind - bison - flex env: - - MATRIX_EVAL="CC=gcc-10 && CXX=g++-10" + - MATRIX_EVAL="CC=gcc-12 && CXX=g++-12" - - name: clang-12 - dist: focal + - name: ubuntu22.04-clang-14 + os: linux + dist: jammy addons: apt: packages: - - clang-12 + - clang-14 - valgrind - bison - flex env: - - MATRIX_EVAL="CC=clang-12 && CXX=clang++-12" + - MATRIX_EVAL="CC=clang-14 && CXX=clang++-14" + + - name: macOS12.04-clang-14 + os: osx + osx_image: xcode13.4 + addons: + homebrew: + packages: + - clang-14 + - bison + - flex + env: + - CLANG_PATH="$(brew --prefix llvm@14)/bin" + - BISON_PATH="$(brew --prefix bison)/bin/bison" + - FLEX_PATH="$(brew --prefix flex)/bin/flex" + - MATRIX_EVAL="CC=${CLANG_PATH}/clang && CXX=${CLANG_PATH}/clang++ BISON=${BISON_PATH} FLEX=${FLEX_PATH}" before_install: - eval "${MATRIX_EVAL}" diff --git a/test/test.sh b/test/test.sh index 7fea4846..2fafb41b 100755 --- a/test/test.sh +++ b/test/test.sh @@ -6,11 +6,13 @@ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./ # Colors RED='\033[1;31m' GREEN='\033[1;32m' +YELLOW='\033[1;33m' NC='\033[0m' BOLD='\033[1;39m' RET=0 SQL_TEST_RET=0 +MEM_LEAK_EXECUTED=$? MEM_LEAK_RET=0 CONFLICT_RET=0 @@ -28,25 +30,32 @@ else fi ################################################# -# Running memory leak checks. -printf "\n${GREEN}Running memory leak checks...${NC}\n" -valgrind --leak-check=full --error-exitcode=200 --log-fd=3 \ - bin/tests -f "test/queries/queries-good.sql" -f "test/queries/queries-bad.sql" \ - 3>&1>/dev/null; +# Running memory leak checks (only on Linux). +unamestr=$(uname) +if [[ "$unamestr" == 'Linux' ]]; then + printf "\n${GREEN}Running memory leak checks...${NC}\n" + valgrind --leak-check=full --error-exitcode=200 --log-fd=3 \ + bin/tests -f "test/queries/queries-good.sql" -f "test/queries/queries-bad.sql" \ + 3>&1>/dev/null; -MEM_LEAK_RET=$? -RET=1 + MEM_LEAK_EXECUTED=true + MEM_LEAK_RET=$? + RET=1 -if [ $MEM_LEAK_RET -eq 0 ]; then - printf "${GREEN}Memory leak check succeeded!${NC}\n" - MEM_LEAK_RET=0 - RET=0 -elif [ $MEM_LEAK_RET -eq 200 ]; then - printf "${RED}Memory leak check failed!${NC}\n" -elif [ $MEM_LEAK_RET -eq 127 ]; then - printf "${RED}Memory leak check failed: command 'valgrind' not found!${NC}\n" + if [ $MEM_LEAK_RET -eq 0 ]; then + printf "${GREEN}Memory leak check succeeded!${NC}\n" + MEM_LEAK_RET=0 + RET=0 + elif [ $MEM_LEAK_RET -eq 200 ]; then + printf "${RED}Memory leak check failed!${NC}\n" + elif [ $MEM_LEAK_RET -eq 127 ]; then + printf "${RED}Memory leak check failed: command 'valgrind' not found!${NC}\n" + else + printf "${RED}Memory leak check failed: error code ${MEM_LEAK_RET}!${NC}\n" + fi else - printf "${RED}Memory leak check failed: error code ${MEM_LEAK_RET}!${NC}\n" + printf "\n${YELLOW}Skipping memory leak checks (can only be executed on Linux)!${NC}\n" + MEM_LEAK_EXECUTED=false fi ################################################# @@ -68,14 +77,19 @@ printf " ---------------------------------- ${BOLD}Summary:\n" if [ $SQL_TEST_RET -eq 0 ]; then printf "SQL Tests: ${GREEN}Success${BOLD}\n"; -else printf "SQL Tests: ${RED}Failure${BOLD}\n"; fi -if [ $MEM_LEAK_RET -eq 0 ]; then printf "Memory Leak Check: ${GREEN}Success${BOLD}\n"; -else printf "Memory Leak Check: ${RED}Failure${BOLD}\n"; fi +else printf "SQL Tests: ${RED}Failure${BOLD}\n"; fi +if [ "$MEM_LEAK_EXECUTED" = true ]; then + if [ $MEM_LEAK_RET -eq 0 ]; then printf "Memory Leak Check: ${GREEN}Success${BOLD}\n"; + else printf "Memory Leak Check: ${RED}Failure${BOLD}\n"; fi +else printf "Memory Leak Check: ${YELLOW}Skipped${BOLD}\n" +fi if [ $CONFLICT_RET -eq 0 ]; then printf "Grammar Conflict Check: ${GREEN}Success${BOLD}\n"; -else printf "Grammar Conflict Check: ${RED}Failure${BOLD}\n"; fi +else printf "Grammar Conflict Check: ${RED}Failure${BOLD}\n"; fi -if [ $RET -eq 0 ]; then printf "${GREEN}All tests passed!${NC}\n"; -else printf "${RED}Some tests failed!${NC}\n"; fi +if [ $RET -ne 0 ]; then printf "${RED}Some tests failed!${NC}\n" +elif [ "$MEM_LEAK_EXECUTED" = false ]; then printf "${YELLOW}Some tests were skipped!${NC}\n" +else printf "${GREEN}All tests passed!${NC}\n" +fi printf "${NC}----------------------------------\n" exit $RET From 3c2e5af74ea58c1492f1b96665270522d94b5df0 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 15:48:05 +0200 Subject: [PATCH 04/14] CI: print valgrind version only for Linux stages --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index a193cde0..3dabfb47 100644 --- a/.travis.yml +++ b/.travis.yml @@ -66,7 +66,7 @@ script: # print package versions - bison --version - flex --version - - valgrind --version + - awk -v a=$(uname) 'BEGIN { if (a == "Linux") system("valgrind --version") }' # build with flex/bison files checked into repo - make -j4 From 0d07c61819781df3efa4bdbcb5aca9a37fe929a2 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 15:55:01 +0200 Subject: [PATCH 05/14] fix CI brew formula --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3dabfb47..719d6763 100644 --- a/.travis.yml +++ b/.travis.yml @@ -50,14 +50,14 @@ matrix: addons: homebrew: packages: - - clang-14 + - llvm@14 - bison - flex env: - - CLANG_PATH="$(brew --prefix llvm@14)/bin" + - LLVM_PATH="$(brew --prefix llvm@14)/bin" - BISON_PATH="$(brew --prefix bison)/bin/bison" - FLEX_PATH="$(brew --prefix flex)/bin/flex" - - MATRIX_EVAL="CC=${CLANG_PATH}/clang && CXX=${CLANG_PATH}/clang++ BISON=${BISON_PATH} FLEX=${FLEX_PATH}" + - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ BISON=${BISON_PATH} FLEX=${FLEX_PATH}" before_install: - eval "${MATRIX_EVAL}" From 71d395d20fbc11731f4b027041184892d38220ce Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 16:12:39 +0200 Subject: [PATCH 06/14] env is set before installing packages --- .travis.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 719d6763..5a184b50 100644 --- a/.travis.yml +++ b/.travis.yml @@ -54,10 +54,9 @@ matrix: - bison - flex env: - - LLVM_PATH="$(brew --prefix llvm@14)/bin" - - BISON_PATH="$(brew --prefix bison)/bin/bison" - - FLEX_PATH="$(brew --prefix flex)/bin/flex" - - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ BISON=${BISON_PATH} FLEX=${FLEX_PATH}" + - BREW_PATH="$(brew --prefix)/opt" + - LLVM_PATH="${BREW_PATH}/llvm@14/bin" + - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ BISON=${BREW_PATH}/bison/bin/bison FLEX=${BREW_PATH}/flex/bin/flex" before_install: - eval "${MATRIX_EVAL}" From 77523a238df55bfda7d5d7beb0c4de00021ae464 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 16:26:43 +0200 Subject: [PATCH 07/14] test if unspecified llvm is faster --- .travis.yml | 6 +++--- test/test.sh | 18 +++++++++--------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5a184b50..fdd92f13 100644 --- a/.travis.yml +++ b/.travis.yml @@ -44,18 +44,18 @@ matrix: env: - MATRIX_EVAL="CC=clang-14 && CXX=clang++-14" - - name: macOS12.04-clang-14 + - name: macOS12.04-clang os: osx osx_image: xcode13.4 addons: homebrew: packages: - - llvm@14 + - llvm - bison - flex env: - BREW_PATH="$(brew --prefix)/opt" - - LLVM_PATH="${BREW_PATH}/llvm@14/bin" + - LLVM_PATH="${BREW_PATH}/llvm/bin" - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ BISON=${BREW_PATH}/bison/bin/bison FLEX=${BREW_PATH}/flex/bin/flex" before_install: diff --git a/test/test.sh b/test/test.sh index 2fafb41b..f240a934 100755 --- a/test/test.sh +++ b/test/test.sh @@ -23,10 +23,10 @@ bin/tests -f "test/queries/queries-good.sql" -f "test/queries/queries-bad.sql" SQL_TEST_RET=$? if [ $SQL_TEST_RET -eq 0 ]; then - printf "${GREEN}SQL parser tests succeeded!${NC}\n" + printf "${GREEN}SQL parser tests succeeded!${NC}\n" else - RET=1 - printf "${RED}SQL parser tests failed!${NC}\n" + RET=1 + printf "${RED}SQL parser tests failed!${NC}\n" fi ################################################# @@ -66,10 +66,10 @@ make -C src/parser/ test >>/dev/null CONFLICT_RET=$? if [ $CONFLICT_RET -eq 0 ]; then - printf "${GREEN}Conflict check succeeded!${NC}\n" + printf "${GREEN}Conflict check succeeded!${NC}\n" else - RET=1 - printf "${RED}Conflict check failed!${NC}\n" + RET=1 + printf "${RED}Conflict check failed!${NC}\n" fi # Print a summary of the test results. @@ -77,14 +77,14 @@ printf " ---------------------------------- ${BOLD}Summary:\n" if [ $SQL_TEST_RET -eq 0 ]; then printf "SQL Tests: ${GREEN}Success${BOLD}\n"; -else printf "SQL Tests: ${RED}Failure${BOLD}\n"; fi +else printf "SQL Tests: ${RED}Failure${BOLD}\n"; fi if [ "$MEM_LEAK_EXECUTED" = true ]; then if [ $MEM_LEAK_RET -eq 0 ]; then printf "Memory Leak Check: ${GREEN}Success${BOLD}\n"; - else printf "Memory Leak Check: ${RED}Failure${BOLD}\n"; fi + else printf "Memory Leak Check: ${RED}Failure${BOLD}\n"; fi else printf "Memory Leak Check: ${YELLOW}Skipped${BOLD}\n" fi if [ $CONFLICT_RET -eq 0 ]; then printf "Grammar Conflict Check: ${GREEN}Success${BOLD}\n"; -else printf "Grammar Conflict Check: ${RED}Failure${BOLD}\n"; fi +else printf "Grammar Conflict Check: ${RED}Failure${BOLD}\n"; fi if [ $RET -ne 0 ]; then printf "${RED}Some tests failed!${NC}\n" elif [ "$MEM_LEAK_EXECUTED" = false ]; then printf "${YELLOW}Some tests were skipped!${NC}\n" From 9a1ed1cc3a0fb72be46ee34f0927e70119e56b98 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 16:32:56 +0200 Subject: [PATCH 08/14] correct export --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index fdd92f13..c36a89a5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -56,7 +56,7 @@ matrix: env: - BREW_PATH="$(brew --prefix)/opt" - LLVM_PATH="${BREW_PATH}/llvm/bin" - - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ BISON=${BREW_PATH}/bison/bin/bison FLEX=${BREW_PATH}/flex/bin/flex" + - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ && BISON=${BREW_PATH}/bison/bin/bison && FLEX=${BREW_PATH}/flex/bin/flex" before_install: - eval "${MATRIX_EVAL}" From b880c9b1a0c5faef8c0422bc54b464bbfe20ce51 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 16:37:27 +0200 Subject: [PATCH 09/14] test apple clang --- .travis.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index c36a89a5..be07666d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -50,13 +50,11 @@ matrix: addons: homebrew: packages: - - llvm - bison - flex env: - BREW_PATH="$(brew --prefix)/opt" - - LLVM_PATH="${BREW_PATH}/llvm/bin" - - MATRIX_EVAL="CC=${LLVM_PATH}/clang && CXX=${LLVM_PATH}/clang++ && BISON=${BREW_PATH}/bison/bin/bison && FLEX=${BREW_PATH}/flex/bin/flex" + - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=${BREW_PATH}/bison/bin/bison && FLEX=${BREW_PATH}/flex/bin/flex" before_install: - eval "${MATRIX_EVAL}" From 0ba969ca06fa417415708a477afd0f4b9547e875 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 16:45:01 +0200 Subject: [PATCH 10/14] explicit paths --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index be07666d..ba7937e0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -53,8 +53,7 @@ matrix: - bison - flex env: - - BREW_PATH="$(brew --prefix)/opt" - - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=${BREW_PATH}/bison/bin/bison && FLEX=${BREW_PATH}/flex/bin/flex" + - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=/usr/local/opt/bison/bin/bison && FLEX=/usr/local/opt/flex/bin/flex" before_install: - eval "${MATRIX_EVAL}" From 3823ea5012dbdbdc63919b6113ca00323c536773 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 17:02:14 +0200 Subject: [PATCH 11/14] gnarf --- .travis.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index ba7937e0..c96afe1a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,8 +16,7 @@ matrix: - bison - flex env: - - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6" - + - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6 && BISON=bison && FLEX=flex" - name: ubuntu22.04-gcc-12 os: linux dist: jammy @@ -29,7 +28,7 @@ matrix: - bison - flex env: - - MATRIX_EVAL="CC=gcc-12 && CXX=g++-12" + - MATRIX_EVAL="CC=gcc-12 && CXX=g++-12 && BISON=bison && FLEX=flex" - name: ubuntu22.04-clang-14 os: linux @@ -42,7 +41,7 @@ matrix: - bison - flex env: - - MATRIX_EVAL="CC=clang-14 && CXX=clang++-14" + - MATRIX_EVAL="CC=clang-14 && CXX=clang++-14 && BISON=bison && FLEX=flex" - name: macOS12.04-clang os: osx @@ -60,8 +59,8 @@ before_install: script: # print package versions - - bison --version - - flex --version + - ${BISON} --version + - ${FLEX} --version - awk -v a=$(uname) 'BEGIN { if (a == "Linux") system("valgrind --version") }' # build with flex/bison files checked into repo From b746f25846a4c65a426f4a92f946c64892df7a63 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 17:22:10 +0200 Subject: [PATCH 12/14] fix? --- .travis.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index c96afe1a..56ca9e5b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -65,11 +65,11 @@ script: # build with flex/bison files checked into repo - make -j4 - - make test + - BISON=${BISON} FLEX=${FLEX} make test - make test_example # build flex/bison files in CI - - make cleanall - - make -j4 - - make test + - BISON=${BISON} FLEX=${FLEX} make cleanall + - BISON=${BISON} FLEX=${FLEX} make -j4 + - BISON=${BISON} FLEX=${FLEX} make test - make test_example From 150491211e1951a9dda73d3a78778eb979bac1d7 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 17:28:01 +0200 Subject: [PATCH 13/14] use brew prefix --- .travis.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 56ca9e5b..cb1bdbfc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -52,13 +52,16 @@ matrix: - bison - flex env: - - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=/usr/local/opt/bison/bin/bison && FLEX=/usr/local/opt/flex/bin/flex" + - BREW_PREFIX="$(brew --prefix)/opt" + - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=${BREW_PREFIX}/bison/bin/bison && FLEX=$${BREW_PREFIX}/flex/bin/flex" before_install: - eval "${MATRIX_EVAL}" script: # print package versions + - ${CC} --version + - ${CXX} --version - ${BISON} --version - ${FLEX} --version - awk -v a=$(uname) 'BEGIN { if (a == "Linux") system("valgrind --version") }' From 761d95c1f24aec0276d6c76ae0ef7bf6c66a8853 Mon Sep 17 00:00:00 2001 From: dey4ss <27929897+dey4ss@users.noreply.github.com> Date: Tue, 9 Aug 2022 17:32:12 +0200 Subject: [PATCH 14/14] remove superfluous $ --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index cb1bdbfc..7db4866a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -53,7 +53,7 @@ matrix: - flex env: - BREW_PREFIX="$(brew --prefix)/opt" - - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=${BREW_PREFIX}/bison/bin/bison && FLEX=$${BREW_PREFIX}/flex/bin/flex" + - MATRIX_EVAL="CC=clang && CXX=clang++ && BISON=${BREW_PREFIX}/bison/bin/bison && FLEX=${BREW_PREFIX}/flex/bin/flex" before_install: - eval "${MATRIX_EVAL}"