clang makefile
This commit is contained in:
		
							parent
							
								
									fcb8f1563d
								
							
						
					
					
						commit
						8176f82de2
					
				
							
								
								
									
										56
									
								
								build/gcc/makefile.clang
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								build/gcc/makefile.clang
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,56 @@ | ||||
| SRC_DIR=../../src | ||||
| 
 | ||||
| _SOURCES = factory.cpp formatters.cpp os.cpp | ||||
| 
 | ||||
| SOURCES = $(patsubst %,$(SRC_DIR)/%,$(_SOURCES)) | ||||
| OBJS_RELEASE = $(patsubst %.cpp,release/%.o,$(_SOURCES)) | ||||
| OBJS_DEBUG = $(patsubst %.cpp,debug/%.o,$(_SOURCES)) | ||||
| 
 | ||||
| 
 | ||||
| CXX	= clang++  | ||||
| CXXFLAGS	= -march=native -Wall -Wextra -Wshadow -pedantic -std=c++11 -pthread -I../../include | ||||
| CXX_RELEASE_FLAGS = -O3 -flto | ||||
| CXX_DEBUG_FLAGS= -g  | ||||
| 
 | ||||
| OUTLIB_RELEASE = libc11log.a | ||||
| OUTLIB_DEBUG = libc11log-debug.a | ||||
| 
 | ||||
| TEST_RELEASE = testme-clang | ||||
| TEST_DEBUG = testme-debug-clang | ||||
| 
 | ||||
| .PHONY: all mkdirs release debug build clean rebuild | ||||
| 
 | ||||
| all: release | ||||
| 
 | ||||
| release: CXXFLAGS += $(CXX_RELEASE_FLAGS) | ||||
| release: mkdirs build-release | ||||
| 	 | ||||
| 
 | ||||
| debug: CXXFLAGS += $(CXX_DEBUG_FLAGS) | ||||
| debug: mkdirs build-debug | ||||
| 
 | ||||
| mkdirs: | ||||
| 	@mkdir -p release debug | ||||
| 
 | ||||
| build-release: $(OBJS_RELEASE)	 | ||||
| 	ar rs $(OUTLIB_RELEASE) $^ | ||||
| 	$(CXX) $(SRC_DIR)/test.cpp $(OBJS_RELEASE) -o $(TEST_RELEASE) $(CXXFLAGS) -B/usr/lib/gold-ld/  | ||||
| 	 | ||||
| build-debug: $(OBJS_DEBUG)	 | ||||
| 	ar  --plugin /usr/local/lib/LLVMgold.so rs $(OUTLIB_DEBUG) $^ | ||||
| 	$(CXX) $(SRC_DIR)/test.cpp $(OBJS_RELEASE) -o $(TEST_DEBUG) $(CXXFLAGS)  -B/usr/lib/gold-ld/ | ||||
| 
 | ||||
| 
 | ||||
| release/%.o: $(SRC_DIR)/%.cpp | ||||
| 	$(CXX) -c $< -o $@ $(CXXFLAGS) | ||||
| 			 | ||||
| 	 | ||||
| 	 | ||||
| debug/%.o: $(SRC_DIR)/%.cpp  | ||||
| 	$(CXX) -c $< -o $@ $(CXXFLAGS)		 | ||||
| 
 | ||||
| clean: | ||||
| 	rm -rf release debug daily.* $(TEST_RELEASE) $(TEST_DEBUG) $(OUTLIB_RELEASE) $(OUTLIB_DEBUG) | ||||
| 	 | ||||
| rebuild: clean all | ||||
| 
 | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user