Skip to content

Commit 7506a26

Browse files
committed
fix(makefile): separate test cflags and test ldflags
1 parent 4ee18c8 commit 7506a26

File tree

1 file changed

+10
-13
lines changed

1 file changed

+10
-13
lines changed

Makefile

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ endif
1616
# Compiler and flags
1717
CC = gcc
1818
CFLAGS = -Wall -Wextra -Wno-unused-parameter -I$(SRC_DIR) -I$(SQLITE_DIR) -I$(CURL_DIR)/include
19-
TEST_FLAGS = $(CFLAGS) -DSQLITE_CORE -DCLOUDSYNC_UNITTEST -DCLOUDSYNC_OMIT_NETWORK -DCLOUDSYNC_OMIT_PRINT_RESULT
20-
EXTENSION_FLAGS = $(CFLAGS) -O3 -fPIC
19+
T_CFLAGS = $(CFLAGS) -DSQLITE_CORE -DCLOUDSYNC_UNITTEST -DCLOUDSYNC_OMIT_NETWORK -DCLOUDSYNC_OMIT_PRINT_RESULT
2120
LDFLAGS = -L./$(CURL_DIR)/$(PLATFORM) -lcurl
2221
COVERAGE = false
2322

@@ -50,14 +49,14 @@ COV_FILES = $(filter-out $(SRC_DIR)/lz4.c $(SRC_DIR)/network.c, $(SRC_FILES))
5049
ifeq ($(PLATFORM),windows)
5150
TARGET := $(DIST_DIR)/cloudsync.dll
5251
LDFLAGS += -shared -lbcrypt -lcrypt32 -lsecur32 -lws2_32
53-
TEST_FLAGS += -lws2_32 -lbcrypt
52+
T_LDFLAGS = -lws2_32 -lbcrypt
5453
# Create .def file for Windows
5554
DEF_FILE := $(BUILD_RELEASE)/cloudsync.def
5655
CFLAGS += -DCURL_STATICLIB
5756
else ifeq ($(PLATFORM),macos)
5857
TARGET := $(DIST_DIR)/cloudsync.dylib
5958
LDFLAGS += -arch x86_64 -arch arm64 -framework Security -dynamiclib -undefined dynamic_lookup
60-
TEST_FLAGS += -framework Security
59+
T_LDFLAGS = -framework Security
6160
CFLAGS += -arch x86_64 -arch arm64
6261
else ifeq ($(PLATFORM),android)
6362
# Use Android NDK's Clang compiler, the user should set the CC
@@ -71,25 +70,24 @@ else ifeq ($(PLATFORM),ios)
7170
TARGET := $(DIST_DIR)/cloudsync.dylib
7271
SDK := -isysroot $(shell xcrun --sdk iphoneos --show-sdk-path) -miphoneos-version-min=11.0
7372
LDFLAGS += -framework Security -framework CoreFoundation -dynamiclib $(SDK)
74-
TEST_FLAGS += -framework Security
73+
T_LDFLAGS = -framework Security
7574
CFLAGS += -arch arm64 $(SDK)
7675
else ifeq ($(PLATFORM),isim)
7776
TARGET := $(DIST_DIR)/cloudsync.dylib
7877
SDK := -isysroot $(shell xcrun --sdk iphonesimulator --show-sdk-path) -miphonesimulator-version-min=11.0
7978
LDFLAGS += -arch x86_64 -arch arm64 -framework Security -framework CoreFoundation -dynamiclib $(SDK)
80-
TEST_FLAGS += -framework Security
79+
T_LDFLAGS = -framework Security
8180
CFLAGS += -arch x86_64 -arch arm64 $(SDK)
8281
else # linux
8382
TARGET := $(DIST_DIR)/cloudsync.so
8483
LDFLAGS += -shared -lssl -lcrypto
85-
CFLAGS += -lm
8684
endif
8785

8886
ifneq ($(COVERAGE),false)
8987
ifneq (,$(filter $(platform),linux windows))
90-
TEST_FLAGS += -lgcov
88+
T_LDFLAGS += -lgcov
9189
endif
92-
TEST_FLAGS += -fprofile-arcs -ftest-coverage
90+
T_LDFLAGS += -fprofile-arcs -ftest-coverage
9391
endif
9492

9593
# Windows .def file generation
@@ -125,15 +123,15 @@ endif
125123

126124
# Test executable
127125
$(TEST_TARGET): $(TEST_OBJ)
128-
$(CC) $? -o $@ $(TEST_FLAGS)
126+
$(CC) $? -o $@ $(T_LDFLAGS)
129127

130128
# Object files
131129
$(BUILD_RELEASE)/%.o: %.c
132-
$(CC) $(EXTENSION_FLAGS) -c $< -o $@
130+
$(CC) $(CFLAGS) -O3 -fPIC -c $< -o $@
133131
$(BUILD_TEST)/sqlite3.o: $(SQLITE_DIR)/sqlite3.c
134132
$(CC) $(CFLAGS) -DSQLITE_CORE=1 -c $< -o $@
135133
$(BUILD_TEST)/%.o: %.c
136-
$(CC) $(TEST_FLAGS) -c $< -o $@
134+
$(CC) $(T_CFLAGS) -c $< -o $@
137135

138136
# Run code coverage (--css-file $(CUSTOM_CSS))
139137
test: $(TARGET) $(TEST_TARGET)
@@ -143,7 +141,6 @@ ifneq ($(COVERAGE),false)
143141
mkdir -p $(COV_DIR)
144142
lcov --capture --directory . --output-file $(COV_DIR)/coverage.info $(subst src, --include src,${COV_FILES})
145143
genhtml $(COV_DIR)/coverage.info --output-directory $(COV_DIR)
146-
rm -rf $(COV_DIR)/coverage.info
147144
endif
148145

149146
# Clean up generated files

0 commit comments

Comments
 (0)