From 30ad1e237907be354541b1fb79761d909d07728f Mon Sep 17 00:00:00 2001 From: Evan Shelhamer Date: Wed, 25 Jun 2014 17:35:40 -0700 Subject: [PATCH] make clang++ happy on OSX by not linking with pthread --- Makefile | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index d62f415..32ce472 100644 --- a/Makefile +++ b/Makefile @@ -184,6 +184,7 @@ ifeq ($(OSX), 1) WARNINGS += -Wno-unneeded-internal-declaration ifneq ($(findstring 10.9, $(shell sw_vers -productVersion)),) CXXFLAGS += -stdlib=libstdc++ + LINKFLAGS += -stdlib=libstdc++ endif endif @@ -229,6 +230,7 @@ CXXFLAGS += -pthread -fPIC $(COMMON_FLAGS) $(WARNINGS) NVCCFLAGS := -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS) # mex may invoke an older gcc that is too liberal with -Wuninitalized MATLAB_CXXFLAGS := $(CXXFLAGS) -Wno-uninitialized +LINKFLAGS += -fPIC $(COMMON_FLAGS) $(WARNINGS) LDFLAGS += $(foreach librarydir,$(LIBRARY_DIRS),-L$(librarydir)) \ $(foreach library,$(LIBRARIES),-l$(library)) PYTHON_LDFLAGS := $(LDFLAGS) $(foreach library,$(PYTHON_LIBRARIES),-l$(library)) @@ -278,7 +280,7 @@ py: $(PY$(PROJECT)_SO) $(PROTO_GEN_PY) $(PY$(PROJECT)_SO): $(STATIC_NAME) $(PY$(PROJECT)_SRC) $(CXX) -shared -o $@ $(PY$(PROJECT)_SRC) \ - $(STATIC_NAME) $(CXXFLAGS) $(PYTHON_LDFLAGS) + $(STATIC_NAME) $(LINKFLAGS) $(PYTHON_LDFLAGS) @ echo mat$(PROJECT): mat @@ -315,7 +317,7 @@ $(ALL_BUILD_DIRS): | $(BUILD_DIR_LINK) @ mkdir -p $@ $(NAME): $(PROTO_OBJS) $(OBJS) | $(LIB_BUILD_DIR) - $(CXX) -shared -o $@ $(OBJS) $(CXXFLAGS) $(LDFLAGS) + $(CXX) -shared -o $@ $(OBJS) $(LINKFLAGS) $(LDFLAGS) @ echo $(STATIC_NAME): $(PROTO_OBJS) $(OBJS) | $(LIB_BUILD_DIR) @@ -330,21 +332,21 @@ $(TEST_BUILD_DIR)/%.o: src/$(PROJECT)/test/%.cpp $(HXX_SRCS) $(TEST_HDRS) \ $(TEST_ALL_BIN): $(TEST_MAIN_SRC) $(TEST_OBJS) $(GTEST_OBJ) $(STATIC_NAME) \ | $(TEST_BIN_DIR) $(CXX) $(TEST_MAIN_SRC) $(TEST_OBJS) $(GTEST_OBJ) $(STATIC_NAME) \ - -o $@ $(CXXFLAGS) $(LDFLAGS) + -o $@ $(LINKFLAGS) $(LDFLAGS) @ echo $(TEST_BIN_DIR)/%.testbin: $(TEST_BUILD_DIR)/%.o $(GTEST_OBJ) $(STATIC_NAME) \ | $(TEST_BIN_DIR) $(CXX) $(TEST_MAIN_SRC) $< $(GTEST_OBJ) $(STATIC_NAME) \ - -o $@ $(CXXFLAGS) $(LDFLAGS) + -o $@ $(LINKFLAGS) $(LDFLAGS) @ echo $(TOOL_BINS): %.bin : %.o $(STATIC_NAME) - $(CXX) $< $(STATIC_NAME) -o $@ $(CXXFLAGS) $(LDFLAGS) + $(CXX) $< $(STATIC_NAME) -o $@ $(LINKFLAGS) $(LDFLAGS) @ echo $(EXAMPLE_BINS): %.bin : %.o $(STATIC_NAME) - $(CXX) $< $(STATIC_NAME) -o $@ $(CXXFLAGS) $(LDFLAGS) + $(CXX) $< $(STATIC_NAME) -o $@ $(LINKFLAGS) $(LDFLAGS) @ echo $(LAYER_BUILD_DIR)/%.o: src/$(PROJECT)/layers/%.cpp $(HXX_SRCS) \ -- 2.7.4