Skip to content

Commit 2779399

Browse files
author
thk123
committed
Correct unit Makefile to use OBJ rather than LIBS
Previously the order of the libraries in LIB would effect whether the unit tests compiled. Use OBJ rather than LIBS to ensure the --start-group/--end-group flags are used in linking. Previously, if a file in CProver changed, though the libraries would be rebuilt, the unit tests wouldn't be relinked against the new library, meaning you would get out of date binaries. This change ensures that the link process is rerun if any of the libraries are rebuilt. Adding dependency to cprover libs for other unit executables
1 parent c674ce7 commit 2779399

File tree

1 file changed

+18
-16
lines changed

1 file changed

+18
-16
lines changed

unit/Makefile

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,21 @@ include ../src/common
1515
cprover.dir:
1616
$(MAKE) $(MAKEARGS) -C ../src
1717

18-
LIBS += ../src/ansi-c/ansi-c$(LIBEXT) \
19-
../src/cpp/cpp$(LIBEXT) \
20-
../src/json/json$(LIBEXT) \
21-
../src/linking/linking$(LIBEXT) \
22-
../src/util/util$(LIBEXT) \
23-
../src/big-int/big-int$(LIBEXT) \
24-
../src/goto-programs/goto-programs$(LIBEXT) \
25-
../src/pointer-analysis/pointer-analysis$(LIBEXT) \
26-
../src/langapi/langapi$(LIBEXT) \
27-
../src/assembler/assembler$(LIBEXT) \
28-
../src/analyses/analyses$(LIBEXT) \
29-
../src/solvers/solvers$(LIBEXT) \
30-
# Empty last line
18+
CPROVER_LIBS =../src/ansi-c/ansi-c$(LIBEXT) \
19+
../src/cpp/cpp$(LIBEXT) \
20+
../src/json/json$(LIBEXT) \
21+
../src/linking/linking$(LIBEXT) \
22+
../src/util/util$(LIBEXT) \
23+
../src/big-int/big-int$(LIBEXT) \
24+
../src/goto-programs/goto-programs$(LIBEXT) \
25+
../src/pointer-analysis/pointer-analysis$(LIBEXT) \
26+
../src/langapi/langapi$(LIBEXT) \
27+
../src/assembler/assembler$(LIBEXT) \
28+
../src/analyses/analyses$(LIBEXT) \
29+
../src/solvers/solvers$(LIBEXT) \
30+
# Empty last line
31+
32+
OBJ += $(CPROVER_LIBS)
3133

3234
TESTS = unit_tests$(EXEEXT) \
3335
miniBDD$(EXEEXT) \
@@ -49,11 +51,11 @@ test: all
4951
unit_tests$(EXEEXT): $(OBJ)
5052
$(LINKBIN)
5153

52-
miniBDD$(EXEEXT): miniBDD$(OBJEXT)
54+
miniBDD$(EXEEXT): miniBDD$(OBJEXT) $(CPROVER_LIBS)
5355
$(LINKBIN)
5456

55-
string_utils$(EXEEXT): string_utils$(OBJEXT)
57+
string_utils$(EXEEXT): string_utils$(OBJEXT) $(CPROVER_LIBS)
5658
$(LINKBIN)
5759

58-
sharing_node$(EXEEXT): sharing_node$(OBJEXT)
60+
sharing_node$(EXEEXT): sharing_node$(OBJEXT) $(CPROVER_LIBS)
5961
$(LINKBIN)

0 commit comments

Comments
 (0)