mirror of
https://github.com/Relintai/sfw.git
synced 2024-11-08 07:52:09 +01:00
Added a release script. Implemented the split library release generation.
This commit is contained in:
parent
2c688317fb
commit
80974b8f61
2
.gitignore
vendored
2
.gitignore
vendored
@ -14,8 +14,8 @@ build/
|
|||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
tools/merger/out/
|
tools/merger/out/
|
||||||
|
|
||||||
tools/doc/out/
|
tools/doc/out/
|
||||||
|
tools/release/out/
|
||||||
|
|
||||||
tools/doc/sfw.h
|
tools/doc/sfw.h
|
||||||
tools/doc/sfw.cpp
|
tools/doc/sfw.cpp
|
||||||
|
59
Makefile_sfwl
Normal file
59
Makefile_sfwl
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
# Thanks to Job Vranish (https://spin.atomicobject.com/2016/08/26/makefile-c-projects/)
|
||||||
|
TARGET_EXEC := final_program
|
||||||
|
|
||||||
|
BUILD_DIR := ./build
|
||||||
|
SRC_DIRS := ./sfwl
|
||||||
|
|
||||||
|
# Find all the C and C++ files we want to compile
|
||||||
|
# Note the single quotes around the * expressions. The shell will incorrectly expand these otherwise, but we want to send the * directly to the find command.
|
||||||
|
SRCS := $(shell find $(SRC_DIRS) -name '*.cpp' -or -name '*.c' -or -name '*.s')
|
||||||
|
|
||||||
|
# Prepends BUILD_DIR and appends .o to every src file
|
||||||
|
# As an example, ./your_dir/hello.cpp turns into ./build/./your_dir/hello.cpp.o
|
||||||
|
OBJS := $(SRCS:%=$(BUILD_DIR)/%.o)
|
||||||
|
|
||||||
|
# String substitution (suffix version without %).
|
||||||
|
# As an example, ./build/hello.cpp.o turns into ./build/hello.cpp.d
|
||||||
|
DEPS := $(OBJS:.o=.d)
|
||||||
|
|
||||||
|
# Every folder in ./src will need to be passed to GCC so that it can find header files
|
||||||
|
INC_DIRS := $(shell find $(SRC_DIRS) -type d)
|
||||||
|
# Add a prefix to INC_DIRS. So moduleA would become -ImoduleA. GCC understands this -I flag
|
||||||
|
INC_FLAGS := $(addprefix -I,$(INC_DIRS))
|
||||||
|
|
||||||
|
# The -MMD and -MP flags together generate Makefiles for us!
|
||||||
|
# These files will have .d instead of .o as the output.
|
||||||
|
CPPFLAGS := $(INC_FLAGS) -MMD -MP -D_REENTRANT -Wall -std=c++14
|
||||||
|
|
||||||
|
LDFLAGS := -lm -ldl -lpthread -lX11 -Wall
|
||||||
|
|
||||||
|
#CXXFLAGS = -Wall -D_REENTRANT -g -Isfw
|
||||||
|
#LDFLAGS = -Wall -D_REENTRANT -g
|
||||||
|
|
||||||
|
|
||||||
|
# The final build step.
|
||||||
|
$(BUILD_DIR)/$(TARGET_EXEC): $(OBJS)
|
||||||
|
$(CXX) $(OBJS) -o $@ $(LDFLAGS)
|
||||||
|
|
||||||
|
# Build step for C source
|
||||||
|
$(BUILD_DIR)/%.c.o: %.c
|
||||||
|
mkdir -p $(dir $@)
|
||||||
|
$(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
# Build step for C++ source
|
||||||
|
$(BUILD_DIR)/%.cpp.o: %.cpp
|
||||||
|
mkdir -p $(dir $@)
|
||||||
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@
|
||||||
|
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
|
clean:
|
||||||
|
rm -r $(BUILD_DIR)
|
||||||
|
|
||||||
|
# Include the .d makefiles. The - at the front suppresses the errors of missing
|
||||||
|
# Makefiles. Initially, all the .d files will be missing, and we don't want those
|
||||||
|
# errors to show up.
|
||||||
|
-include $(DEPS)
|
||||||
|
|
||||||
|
|
||||||
|
|
62
compile_osx_sfwl.sh
Executable file
62
compile_osx_sfwl.sh
Executable file
@ -0,0 +1,62 @@
|
|||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/color.cpp -o sfwl/core/color.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/logger.cpp -o sfwl/core/logger.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/math_funcs.cpp -o sfwl/core/math_funcs.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/memory.cpp -o sfwl/core/memory.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/pcg.cpp -o sfwl/core/pcg.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/plane.cpp -o sfwl/core/plane.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/random_pcg.cpp -o sfwl/core/random_pcg.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/rect2i.cpp -o sfwl/core/rect2i.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/safe_refcount.cpp -o sfwl/core/safe_refcount.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/ustring.cpp -o sfwl/core/ustring.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/string_name.cpp -o sfwl/core/string_name.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/vector2i.cpp -o sfwl/core/vector2i.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/file_access.cpp -o sfwl/core/file_access.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/dir_access.cpp -o sfwl/core/dir_access.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/pool_vector.cpp -o sfwl/core/pool_vector.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/pool_allocator.cpp -o sfwl/core/pool_allocator.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/mutex.cpp -o sfwl/core/mutex.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/sfw_time.cpp -o sfwl/core/sfw_time.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/thread.cpp -o sfwl/core/thread.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/socket.cpp -o sfwl/core/socket.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/inet_address.cpp -o sfwl/core/inet_address.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/sub_process.cpp -o sfwl/core/sub_process.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/core/sfw_core.cpp -o sfwl/core/sfw_core.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/object.cpp -o sfwl/object/object.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/reference.cpp -o sfwl/object/reference.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/core_string_names.cpp -o sfwl/object/core_string_names.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/variant.cpp -o sfwl/object/variant.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/variant_op.cpp -o sfwl/object/variant_op.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/psignal.cpp -o sfwl/object/psignal.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/array.cpp -o sfwl/object/array.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/dictionary.cpp -o sfwl/object/dictionary.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/ref_ptr.cpp -o sfwl/object/ref_ptr.o
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/object/resource.cpp -o sfwl/object/resource.o
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g -Isfwl -c sfwl/main.cpp -o sfwl/main.o
|
||||||
|
|
||||||
|
# You might need to add -lpthread and/or -latomic depending on your compiler version
|
||||||
|
|
||||||
|
clang++ -std=c++14 -D_REENTRANT -g sfwl/core/color.o \
|
||||||
|
sfwl/core/logger.o sfwl/core/math_funcs.o \
|
||||||
|
sfwl/core/memory.o sfwl/core/pcg.o sfwl/core/random_pcg.o \
|
||||||
|
sfwl/core/rect2i.o sfwl/core/safe_refcount.o \
|
||||||
|
sfwl/core/ustring.o sfwl/core/string_name.o \
|
||||||
|
sfwl/core/vector2i.o \
|
||||||
|
sfwl/core/pool_vector.o sfwl/core/pool_allocator.o sfwl/core/mutex.o sfwl/core/sfw_time.o \
|
||||||
|
sfwl/core/dir_access.o sfwl/core/file_access.o sfwl/core/thread.o \
|
||||||
|
sfwl/core/socket.o sfwl/core/inet_address.o \
|
||||||
|
sfwl/core/sub_process.o \
|
||||||
|
sfwl/core/sfw_core.o \
|
||||||
|
sfwl/object/object.o sfwl/object/reference.o sfwl/object/core_string_names.o \
|
||||||
|
sfwl/object/variant.o sfwl/object/variant_op.o sfwl/object/psignal.o \
|
||||||
|
sfwl/object/array.o sfwl/object/dictionary.o sfwl/object/ref_ptr.o \
|
||||||
|
sfwl/object/resource.o \
|
||||||
|
sfwl/main.o \
|
||||||
|
-o game
|
72
compile_vs_sfwl.bat
Normal file
72
compile_vs_sfwl.bat
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
@echo off
|
||||||
|
|
||||||
|
if not defined DevEnvDir (
|
||||||
|
call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
|
||||||
|
)
|
||||||
|
|
||||||
|
rem debug: /Zi (== -g)
|
||||||
|
|
||||||
|
rem you might need to add /std:c++14 depending on your compiler version.
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/color.cpp /Fo:sfwl/core/color.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/logger.cpp /Fo:sfwl/core/logger.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/math_funcs.cpp /Fo:sfwl/core/math_funcs.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/memory.cpp /Fo:sfwl/core/memory.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/pcg.cpp /Fo:sfwl/core/pcg.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/random_pcg.cpp /Fo:sfwl/core/random_pcg.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/rect2i.cpp /Fo:sfwl/core/rect2i.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/safe_refcount.cpp /Fo:sfwl/core/safe_refcount.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/ustring.cpp /Fo:sfwl/core/ustring.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/string_name.cpp /Fo:sfwl/core/string_name.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/vector2i.cpp /Fo:sfwl/core/vector2i.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/file_access.cpp /Fo:sfwl/core/file_access.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/dir_access.cpp /Fo:sfwl/core/dir_access.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/pool_vector.cpp /Fo:sfwl/core/pool_vector.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/pool_allocator.cpp /Fo:sfwl/core/pool_allocator.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/mutex.cpp /Fo:sfwl/core/mutex.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/sfw_time.cpp /Fo:sfwl/core/sfw_time.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/thread.cpp /Fo:sfwl/core/thread.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/socket.cpp /Fo:sfwl/core/socket.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/inet_address.cpp /Fo:sfwl/core/inet_address.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/sub_process.cpp /Fo:sfwl/core/sub_process.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/core/sfw_core.cpp /Fo:sfwl/core/sfw_core.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/object.cpp /Fo:sfwl/object/object.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/reference.cpp /Fo:sfwl/object/reference.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/core_string_names.cpp /Fo:sfwl/object/core_string_names.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/variant.cpp /Fo:sfwl/object/variant.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/variant_op.cpp /Fo:sfwl/object/variant_op.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/psignal.cpp /Fo:sfwl/object/psignal.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/array.cpp /Fo:sfwl/object/array.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/dictionary.cpp /Fo:sfwl/object/dictionary.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/ref_ptr.cpp /Fo:sfwl/object/ref_ptr.obj
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/object/resource.cpp /Fo:sfwl/object/resource.obj
|
||||||
|
|
||||||
|
cl /D_REENTRANT /EHsc /Zi /Isfwl /c sfwl/main.cpp /Fo:sfwl/main.obj
|
||||||
|
|
||||||
|
|
||||||
|
cl /D_REENTRANT /Zi ^
|
||||||
|
/EHsc ^
|
||||||
|
/Fegame-vc.exe ^
|
||||||
|
sfwl/core/color.obj ^
|
||||||
|
sfwl/core/logger.obj sfwl/core/math_funcs.obj ^
|
||||||
|
sfwl/core/memory.obj sfwl/core/pcg.obj sfwl/core/random_pcg.obj ^
|
||||||
|
sfwl/core/rect2i.obj sfwl/core/safe_refcount.obj ^
|
||||||
|
sfwl/core/ustring.obj sfwl/core/string_name.obj ^
|
||||||
|
sfwl/core/vector2i.obj ^
|
||||||
|
sfwl/core/pool_vector.obj sfwl/core/pool_allocator.obj sfwl/core/mutex.obj sfwl/core/sfw_time.obj ^
|
||||||
|
sfwl/core/dir_access.obj sfwl/core/file_access.obj sfwl/core/thread.obj ^
|
||||||
|
sfwl/core/socket.obj sfwl/core/inet_address.obj ^
|
||||||
|
sfwl/core/sub_process.obj ^
|
||||||
|
sfwl/core/sfw_core.obj ^
|
||||||
|
sfwl/object/object.obj sfwl/object/reference.obj sfwl/object/core_string_names.obj ^
|
||||||
|
sfwl/object/variant.obj sfwl/object/variant_op.obj sfwl/object/psignal.obj ^
|
||||||
|
sfwl/object/array.obj sfwl/object/dictionary.obj sfwl/object/ref_ptr.obj ^
|
||||||
|
sfwl/object/resource.obj ^
|
||||||
|
sfwl/main.obj ^
|
||||||
|
/SUBSYSTEM:CONSOLE
|
65
compile_windows_sfwl.sh
Executable file
65
compile_windows_sfwl.sh
Executable file
@ -0,0 +1,65 @@
|
|||||||
|
|
||||||
|
# You might need to add -std=c++14 depending on your compiler version
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/color.cpp -o sfwl/core/color.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/logger.cpp -o sfwl/core/logger.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/math_funcs.cpp -o sfwl/core/math_funcs.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/memory.cpp -o sfwl/core/memory.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/pcg.cpp -o sfwl/core/pcg.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/random_pcg.cpp -o sfwl/core/random_pcg.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/rect2i.cpp -o sfwl/core/rect2i.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/safe_refcount.cpp -o sfwl/core/safe_refcount.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/ustring.cpp -o sfwl/core/ustring.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/string_name.cpp -o sfwl/core/string_name.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/vector2i.cpp -o sfwl/core/vector2i.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/file_access.cpp -o sfwl/core/file_access.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/dir_access.cpp -o sfwl/core/dir_access.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/pool_vector.cpp -o sfwl/core/pool_vector.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/pool_allocator.cpp -o sfwl/core/pool_allocator.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/mutex.cpp -o sfwl/core/mutex.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/sfw_time.cpp -o sfwl/core/sfw_time.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/thread.cpp -o sfwl/core/thread.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/socket.cpp -o sfwl/core/socket.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/inet_address.cpp -o sfwl/core/inet_address.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/sub_process.cpp -o sfwl/core/sub_process.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/core/sfw_core.cpp -o sfwl/core/sfw_core.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/object.cpp -o sfwl/object/object.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/reference.cpp -o sfwl/object/reference.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/core_string_names.cpp -o sfwl/object/core_string_names.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/variant.cpp -o sfwl/object/variant.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/variant_op.cpp -o sfwl/object/variant_op.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/psignal.cpp -o sfwl/object/psignal.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/array.cpp -o sfwl/object/array.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/dictionary.cpp -o sfwl/object/dictionary.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/ref_ptr.cpp -o sfwl/object/ref_ptr.o
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/object/resource.cpp -o sfwl/object/resource.o
|
||||||
|
|
||||||
|
ccache g++ -Wall -D_REENTRANT -g -Isfwl -c sfwl/main.cpp -o sfwl/main.o
|
||||||
|
|
||||||
|
# You might need to add -lpthread and/or -latomic depending on your compiler version
|
||||||
|
|
||||||
|
ccache g++ -Wall \
|
||||||
|
-D_REENTRANT -g sfwl/core/color.o \
|
||||||
|
sfwl/core/logger.o sfwl/core/math_funcs.o \
|
||||||
|
sfwl/core/memory.o sfwl/core/pcg.o sfwl/core/random_pcg.o \
|
||||||
|
sfwl/core/rect2i.o sfwl/core/safe_refcount.o \
|
||||||
|
sfwl/core/ustring.o sfwl/core/string_name.o \
|
||||||
|
sfwl/core/vector2i.o \
|
||||||
|
sfwl/core/pool_vector.o sfwl/core/pool_allocator.o sfwl/core/mutex.o sfwl/core/sfw_time.o \
|
||||||
|
sfwl/core/dir_access.o sfwl/core/file_access.o sfwl/core/thread.o \
|
||||||
|
sfwl/core/socket.o sfwl/core/inet_address.o \
|
||||||
|
sfwl/core/sub_process.o \
|
||||||
|
sfwl/core/sfw_core.o \
|
||||||
|
sfwl/object/object.o sfwl/object/reference.o sfwl/object/core_string_names.o \
|
||||||
|
sfwl/object/variant.o sfwl/object/variant_op.o sfwl/object/psignal.o \
|
||||||
|
sfwl/object/array.o sfwl/object/dictionary.o sfwl/object/ref_ptr.o \
|
||||||
|
sfwl/object/resource.o \
|
||||||
|
sfwl/main.o \
|
||||||
|
-o game
|
||||||
|
|
72
tools/release/make_release.sh
Executable file
72
tools/release/make_release.sh
Executable file
@ -0,0 +1,72 @@
|
|||||||
|
|
||||||
|
# This script generates the final release zip
|
||||||
|
# Before running this:
|
||||||
|
# 0. Make sure that the repository is clean.
|
||||||
|
# (Technically only the sfw, sfwl and demos folders need to be clean, as they will be copied using cp -R.)
|
||||||
|
# Run: `git clean -f -x` or `git clean -f -x -d` if you want to get rid of folders too
|
||||||
|
# 1. Run tools/merger/join_all.sh
|
||||||
|
# 2. Run tools/doc/compile_linux.sh
|
||||||
|
# 3. Run tools/doc/generate_all.sh
|
||||||
|
# 4. Run tools/doc/inline_docs.py using python:
|
||||||
|
# cd tools/doc/
|
||||||
|
# python inline_docs.py
|
||||||
|
|
||||||
|
rm -Rf out
|
||||||
|
|
||||||
|
mkdir -p out
|
||||||
|
mkdir -p out/sfw
|
||||||
|
mkdir -p out/sfw/merged
|
||||||
|
mkdir -p out/sfw/split
|
||||||
|
mkdir -p out/sfw/demos
|
||||||
|
|
||||||
|
mkdir -p out/sfwl
|
||||||
|
mkdir -p out/sfwl/merged
|
||||||
|
mkdir -p out/sfwl/split
|
||||||
|
mkdir -p out/sfwl/demos
|
||||||
|
|
||||||
|
version=""
|
||||||
|
|
||||||
|
if [ ! -z $1 ]; then
|
||||||
|
version=""
|
||||||
|
version+=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
project_root_folder=$(pwd)/
|
||||||
|
sfw_out_folder=$(pwd)/tools/release/out/sfw/
|
||||||
|
sfwl_out_folder=$(pwd)/tools/release/out/sfwl/
|
||||||
|
|
||||||
|
echo "Building SFW release v: $version"
|
||||||
|
|
||||||
|
# SFW Split
|
||||||
|
cp -R "$project_root_folder/sfw" "$sfw_out_folder/split/sfw"
|
||||||
|
cp "$project_root_folder/compile_linux.sh" "$sfw_out_folder/split/compile_linux.sh"
|
||||||
|
cp "$project_root_folder/compile_osx.sh" "$sfw_out_folder/split/compile_osx.sh"
|
||||||
|
cp "$project_root_folder/compile_vs.bat" "$sfw_out_folder/split/compile_vs.bat"
|
||||||
|
cp "$project_root_folder/compile_windows.sh" "$sfw_out_folder/split/compile_windows.sh"
|
||||||
|
cp "$project_root_folder/Makefile" "$sfw_out_folder/split/Makefile"
|
||||||
|
|
||||||
|
cp "$project_root_folder/.clang-format" "$sfw_out_folder/split/.clang-format"
|
||||||
|
cp "$project_root_folder/.clang-tidy" "$sfw_out_folder/split/.clang-tidy"
|
||||||
|
cp "$project_root_folder/.editorconfig" "$sfw_out_folder/split/.editorconfig"
|
||||||
|
cp "$project_root_folder/.gitignore" "$sfw_out_folder/split/.gitignore"
|
||||||
|
cp "$project_root_folder/LICENSE.txt" "$sfw_out_folder/split/LICENSE.txt"
|
||||||
|
cp "$project_root_folder/README.md" "$sfw_out_folder/split/README.md"
|
||||||
|
|
||||||
|
# SFWL Split
|
||||||
|
cp -R "$project_root_folder/sfwl" "$sfwl_out_folder/split/sfwl"
|
||||||
|
cp "$project_root_folder/compile_linux_sfwl.sh" "$sfwl_out_folder/split/compile_linux.sh"
|
||||||
|
cp "$project_root_folder/compile_osx_sfwl.sh" "$sfwl_out_folder/split/compile_osx.sh"
|
||||||
|
cp "$project_root_folder/compile_vs_sfwl.bat" "$sfwl_out_folder/split/compile_vs.bat"
|
||||||
|
cp "$project_root_folder/compile_windows_sfwl.sh" "$sfwl_out_folder/split/compile_windows.sh"
|
||||||
|
cp "$project_root_folder/Makefile_sfwl" "$sfwl_out_folder/split/Makefile"
|
||||||
|
|
||||||
|
cp "$project_root_folder/.clang-format" "$sfwl_out_folder/split/.clang-format"
|
||||||
|
cp "$project_root_folder/.clang-tidy" "$sfwl_out_folder/split/.clang-tidy"
|
||||||
|
cp "$project_root_folder/.editorconfig" "$sfwl_out_folder/split/.editorconfig"
|
||||||
|
cp "$project_root_folder/.gitignore" "$sfwl_out_folder/split/.gitignore"
|
||||||
|
cp "$project_root_folder/LICENSE.txt" "$sfwl_out_folder/split/LICENSE.txt"
|
||||||
|
cp "$project_root_folder/README.md" "$sfwl_out_folder/split/README.md"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user