Commit 8600602e authored by jouke's avatar jouke
Browse files

Make file and ignore for the build

parent 0ef5e212
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ SOURCE_DIR := OpenSimRoot/src/
# Where to store objects as we build them?
RELEASE_BUILD_DIR := release_build/
NOPYTHON_BUILD_DIR := nopython_build/
GW_BUILD_DIR := graphWriting_build/
DEBUG_BUILD_DIR := debug_build/
WIN_BUILD_DIR := windows_build/

@@ -20,6 +21,7 @@ WIN_BUILD_DIR := windows_build/
# its name would conflict with the existing `OpenSimRoot/` subdir
RELEASE_BIN := $(RELEASE_BUILD_DIR)OpenSimRoot
NOPYTHON_BIN := $(NOPYTHON_BUILD_DIR)OpenSimRoot_noPython
GW_BIN := $(GW_BUILD_DIR)OpenSimRoot_graphWriting
DEBUG_BIN := $(DEBUG_BUILD_DIR)OpenSimRoot_debug
WIN_BIN := $(WIN_BUILD_DIR)OpenSimRoot.exe

@@ -76,11 +78,13 @@ SOURCES := $(call recursive_wildcard, $(SOURCE_DIR), *.cpp)
#	but necessary to keep from mixing compiled objects with and without debug symbols
DEPENDS_RELEASE := $(patsubst $(SOURCE_DIR)%.cpp, $(RELEASE_BUILD_DIR)%.d, $(SOURCES))
DEPENDS_NOPYTHON := $(patsubst $(SOURCE_DIR)%.cpp, $(NOPYTHON_BUILD_DIR)%.d, $(SOURCES))
DEPENDS_GW := $(patsubst $(SOURCE_DIR)%.cpp, $(GW_BUILD_DIR)%.d, $(SOURCES))
DEPENDS_WIN := $(patsubst $(SOURCE_DIR)%.cpp, $(WIN_BUILD_DIR)%.d, $(SOURCES))
DEPENDS_DEBUG := $(patsubst $(SOURCE_DIR)%.cpp, $(DEBUG_BUILD_DIR)%.d, $(SOURCES))

OBJECTS_RELEASE := $(patsubst $(SOURCE_DIR)%.cpp, $(RELEASE_BUILD_DIR)%.o, $(SOURCES))
OBJECTS_NOPYTHON := $(patsubst $(SOURCE_DIR)%.cpp, $(NOPYTHON_BUILD_DIR)%.o, $(SOURCES))
OBJECTS_GW := $(patsubst $(SOURCE_DIR)%.cpp, $(GW_BUILD_DIR)%.o, $(SOURCES))
OBJECTS_WIN := $(patsubst $(SOURCE_DIR)%.cpp, $(WIN_BUILD_DIR)%.o, $(SOURCES))
OBJECTS_DEBUG := $(patsubst $(SOURCE_DIR)%.cpp, $(DEBUG_BUILD_DIR)%.o, $(SOURCES))

@@ -89,6 +93,7 @@ BUILD_SUBDIRS := $(sort $(dir $(BUILD_SUBDIRS))) # sort is to drop duplicates

BUILD_TREE_RELEASE := $(addprefix $(RELEASE_BUILD_DIR), $(BUILD_SUBDIRS))
BUILD_TREE_NOPYTHON := $(addprefix $(NOPYTHON_BUILD_DIR), $(BUILD_SUBDIRS))
BUILD_TREE_GW := $(addprefix $(GW_BUILD_DIR), $(BUILD_SUBDIRS))
BUILD_TREE_WIN := $(addprefix $(WIN_BUILD_DIR), $(BUILD_SUBDIRS))
BUILD_TREE_DEBUG := $(addprefix $(DEBUG_BUILD_DIR), $(BUILD_SUBDIRS))

@@ -101,6 +106,8 @@ release: $(RELEASE_BIN)

nopython: $(NOPYTHON_BIN)

graphWriting: $(GW_BIN)

debug: $(DEBUG_BIN)

win: $(WIN_BIN)
@@ -113,6 +120,8 @@ $(BUILD_TREE_RELEASE):
	mkdir -p $@
$(BUILD_TREE_NOPYTHON):
	mkdir -p $@
$(BUILD_TREE_GW):
	mkdir -p $@
$(BUILD_TREE_WIN):
	mkdir -p $@
$(BUILD_TREE_DEBUG):
@@ -129,6 +138,8 @@ $(RELEASE_BUILD_DIR)%.o: $(SOURCE_DIR)%.cpp | $(BUILD_TREE_RELEASE)
	$(CXX) $(CXXFLAGS) $(DEPFLAGS) -o "$@" "$<"
$(NOPYTHON_BUILD_DIR)%.o: $(SOURCE_DIR)%.cpp | $(BUILD_TREE_NOPYTHON)
	$(CXX) $(CXXFLAGS) -DNOPYTHON $(DEPFLAGS)  -o "$@" "$<"
$(GW_BUILD_DIR)%.o: $(SOURCE_DIR)%.cpp | $(BUILD_TREE_GW)
	$(CXX) $(CXXFLAGS) -DNOPYTHON -DWRITEGRAPH $(DEPFLAGS)  -o "$@" "$<"
$(WIN_BUILD_DIR)%.o: $(SOURCE_DIR)%.cpp | $(BUILD_TREE_WIN)
	$(CXXWIN) $(CXXFLAGSWIN) $(DEPFLAGSWIN) -o "$@" "$<"
$(DEBUG_BUILD_DIR)%.o: $(SOURCE_DIR)%.cpp | $(BUILD_TREE_DEBUG)
@@ -142,6 +153,8 @@ $(RELEASE_BIN): $(OBJECTS_RELEASE) | $(RELEASE_BUILD_DIR)
	$(CXX) -o $@ $+ -lpython3.12 
$(NOPYTHON_BIN): $(OBJECTS_NOPYTHON) | $(NOPYTHON_BUILD_DIR)
	$(CXX) -o $@ $+ 
$(GW_BIN): $(OBJECTS_GW) | $(GW_BUILD_DIR)
	$(CXX) -o $@ $+ 
$(WIN_BIN): $(OBJECTS_WIN) | $(WIN_BUILD_DIR)
	$(CXXWIN) -o $@ $+ -lpsapi -lcomdlg32 -static-libstdc++ -static-libgcc 
$(DEBUG_BIN): $(OBJECTS_DEBUG) | $(DEBUG_BUILD_DIR)
@@ -151,6 +164,7 @@ $(DEBUG_BIN): $(OBJECTS_DEBUG) | $(DEBUG_BUILD_DIR)
# We include them here as if we'd typed them out for ourselves.
-include $(DEPENDS_RELEASE)
-include $(DEPENDS_NOPYTHON)
-include $(DEPENDS_GW)
-include $(DEPENDS_WIN)
-include $(DEPENDS_DEBUG)

@@ -161,6 +175,8 @@ clean-release:
	rm -rf $(OBJECTS_RELEASE) $(DEPENDS_RELEASE) $(RELEASE_BIN)
clean-nopython:
	rm -rf $(OBJECTS_NOPYTHON) $(DEPENDS_NOPYTHON) $(NOPYTHON_BIN)
clean-graphWriting:
	rm -rf $(OBJECTS_GW) $(DEPENDS_GW) $(GW_BIN)
clean-win:
	rm -rf $(OBJECTS_WIN) $(DEPENDS_WIN) $(WIN_BIN)
clean-debug:
+1 −0
Original line number Diff line number Diff line
/OpenSimRoot_graphWriting