diff options
| author | David Reid <[email protected]> | 2018-07-01 20:52:50 +1000 |
|---|---|---|
| committer | David Reid <[email protected]> | 2018-07-01 20:52:50 +1000 |
| commit | fec0a4f2e37e63cdbc531f6914a55442d520a104 (patch) | |
| tree | 546a30f60fbe76abb24a2514ba824ec210674c36 /templates | |
| parent | bce7a7b5765defcfb5692dc73e7251c8dd3e9fe2 (diff) | |
| parent | 7dedb84fd07f81cbe3f7c299b7e6e3f4e9959391 (diff) | |
| download | raylib-fec0a4f2e37e63cdbc531f6914a55442d520a104.tar.gz raylib-fec0a4f2e37e63cdbc531f6914a55442d520a104.zip | |
Merge branch 'master' of https://github.com/raysan5/raylib into dr/mini_al
Diffstat (limited to 'templates')
| -rw-r--r-- | templates/advance_game/Makefile | 23 | ||||
| -rw-r--r-- | templates/simple_game/Makefile | 27 | ||||
| -rw-r--r-- | templates/standard_game/Makefile | 27 | ||||
| -rw-r--r-- | templates/standard_game/Makefile.Android | 18 |
4 files changed, 61 insertions, 34 deletions
diff --git a/templates/advance_game/Makefile b/templates/advance_game/Makefile index 61a59bc2..a2d41193 100644 --- a/templates/advance_game/Makefile +++ b/templates/advance_game/Makefile @@ -58,8 +58,17 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(UNAMEOS),Linux) PLATFORM_OS=LINUX endif - ifeq ($(UNAMEOS),FreeBSD) - PLATFORM_OS=FREEBSD + ifeq ($(UNAMEOS),FreeBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),OpenBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),NetBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),DragonFly) + PLATFORM_OS=BSD endif ifeq ($(UNAMEOS),Darwin) PLATFORM_OS=OSX @@ -97,8 +106,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(PLATFORM_OS),OSX) RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/osx endif - ifeq ($(PLATFORM_OS),FREEBSD) - RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/freebsd + ifeq ($(PLATFORM_OS),BSD) + RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/bsd endif endif ifeq ($(PLATFORM),PLATFORM_RPI) @@ -117,8 +126,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) # OSX default compiler CC = clang endif - ifeq ($(PLATFORM_OS),FREEBSD) - # FreeBSD default compiler + ifeq ($(PLATFORM_OS),BSD) + # FreeBSD, OpenBSD, NetBSD, DragonFly default compiler CC = clang endif endif @@ -160,7 +169,7 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(PLATFORM_OS),WINDOWS) # resources file contains windows exe icon # -Wl,--subsystem,windows hides the console window - CFLAGS += $(RAYLIB_PATH)/src/raylib_icon -Wl,--subsystem,windows + CFLAGS += $(RAYLIB_PATH)/src/raylib.rc.o -Wl,--subsystem,windows endif ifeq ($(PLATFORM_OS),LINUX) CFLAGS += -D_DEFAULT_SOURCE diff --git a/templates/simple_game/Makefile b/templates/simple_game/Makefile index 1b512670..9e768f5f 100644 --- a/templates/simple_game/Makefile +++ b/templates/simple_game/Makefile @@ -59,7 +59,16 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) PLATFORM_OS=LINUX endif ifeq ($(UNAMEOS),FreeBSD) - PLATFORM_OS=FREEBSD + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),OpenBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),NetBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),DragonFly) + PLATFORM_OS=BSD endif ifeq ($(UNAMEOS),Darwin) PLATFORM_OS=OSX @@ -97,8 +106,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(PLATFORM_OS),OSX) RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/osx endif - ifeq ($(PLATFORM_OS),FREEBSD) - RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/freebsd + ifeq ($(PLATFORM_OS),BSD) + RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/bsd endif endif ifeq ($(PLATFORM),PLATFORM_RPI) @@ -117,8 +126,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) # OSX default compiler CC = clang endif - ifeq ($(PLATFORM_OS),FREEBSD) - # FreeBSD default compiler + ifeq ($(PLATFORM_OS),BSD) + # FreeBSD, OpenBSD, NetBSD, DragonFly default compiler CC = clang endif endif @@ -160,7 +169,7 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(PLATFORM_OS),WINDOWS) # resources file contains windows exe icon # -Wl,--subsystem,windows hides the console window - CFLAGS += $(RAYLIB_PATH)/src/raylib_icon -Wl,--subsystem,windows + CFLAGS += $(RAYLIB_PATH)/src/raylib.rc.o -Wl,--subsystem,windows endif ifeq ($(PLATFORM_OS),LINUX) CFLAGS += -D_DEFAULT_SOURCE @@ -200,7 +209,7 @@ endif LDFLAGS = -L. -L$(RAYLIB_RELEASE_PATH) -L$(RAYLIB_PATH)/src ifeq ($(PLATFORM),PLATFORM_DESKTOP) - ifeq ($(PLATFORM_OS),FREEBSD) + ifeq ($(PLATFORM_OS),BSD) INCLUDE_PATHS += -I/usr/local/include LDFLAGS += -L. -Lsrc -L/usr/local/lib endif @@ -240,8 +249,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) # NOTE: Required packages: libopenal-dev libegl1-mesa-dev LDLIBS = -lraylib -framework OpenGL -framework OpenAL -framework Cocoa endif - ifeq ($(PLATFORM_OS),FREEBSD) - # Libraries for FreeBSD desktop compiling + ifeq ($(PLATFORM_OS),BSD) + # Libraries for FreeBSD, OpenBSD, NetBSD, DragonFly desktop compiling # NOTE: Required packages: mesa-libs LDLIBS = -lraylib -lGL -lpthread -lm diff --git a/templates/standard_game/Makefile b/templates/standard_game/Makefile index 7046233c..2e19e17c 100644 --- a/templates/standard_game/Makefile +++ b/templates/standard_game/Makefile @@ -59,7 +59,16 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) PLATFORM_OS=LINUX endif ifeq ($(UNAMEOS),FreeBSD) - PLATFORM_OS=FREEBSD + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),OpenBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),NetBSD) + PLATFORM_OS=BSD + endif + ifeq ($(UNAMEOS),DragonFly) + PLATFORM_OS=BSD endif ifeq ($(UNAMEOS),Darwin) PLATFORM_OS=OSX @@ -97,8 +106,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(PLATFORM_OS),OSX) RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/osx endif - ifeq ($(PLATFORM_OS),FREEBSD) - RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/freebsd + ifeq ($(PLATFORM_OS),BSD) + RAYLIB_RELEASE_PATH = $(RAYLIB_PATH)/release/libs/bsd endif endif ifeq ($(PLATFORM),PLATFORM_RPI) @@ -117,8 +126,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) # OSX default compiler CC = clang endif - ifeq ($(PLATFORM_OS),FREEBSD) - # FreeBSD default compiler + ifeq ($(PLATFORM_OS),BSD) + # FreeBSD, OpenBSD, NetBSD, DragonFly default compiler CC = clang endif endif @@ -160,7 +169,7 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) ifeq ($(PLATFORM_OS),WINDOWS) # resources file contains windows exe icon # -Wl,--subsystem,windows hides the console window - CFLAGS += $(RAYLIB_PATH)/src/raylib_icon -Wl,--subsystem,windows + CFLAGS += $(RAYLIB_PATH)/src/raylib.rc.o -Wl,--subsystem,windows endif ifeq ($(PLATFORM_OS),LINUX) CFLAGS += -D_DEFAULT_SOURCE @@ -200,7 +209,7 @@ endif LDFLAGS = -L. -L$(RAYLIB_RELEASE_PATH) -L$(RAYLIB_PATH)/src ifeq ($(PLATFORM),PLATFORM_DESKTOP) - ifeq ($(PLATFORM_OS),FREEBSD) + ifeq ($(PLATFORM_OS),BSD) INCLUDE_PATHS += -I/usr/local/include LDFLAGS += -L. -Lsrc -L/usr/local/lib endif @@ -240,8 +249,8 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP) # NOTE: Required packages: libopenal-dev libegl1-mesa-dev LDLIBS = -lraylib -framework OpenGL -framework OpenAL -framework Cocoa endif - ifeq ($(PLATFORM_OS),FREEBSD) - # Libraries for FreeBSD desktop compiling + ifeq ($(PLATFORM_OS),BSD) + # Libraries for FreeBSD, OpenBSD, NetBSD, DragonFly desktop compiling # NOTE: Required packages: mesa-libs LDLIBS = -lraylib -lGL -lpthread -lm diff --git a/templates/standard_game/Makefile.Android b/templates/standard_game/Makefile.Android index d9503a40..87b04722 100644 --- a/templates/standard_game/Makefile.Android +++ b/templates/standard_game/Makefile.Android @@ -29,13 +29,14 @@ RAYLIB_PATH ?= ..\.. # NOTE: JAVA_HOME must be set to JDK ANDROID_HOME = C:/android-sdk ANDROID_NDK = C:/android-ndk +ANDROID_API_VERSION = 21 ANDROID_TOOLCHAIN = C:/android_toolchain_arm64_api21 ANDROID_BUILD_TOOLS = $(ANDROID_HOME)/build-tools/26.0.2 ANDROID_PLATFORM_TOOLS = $(ANDROID_HOME)/platform-tools JAVA_HOME = C:/PROGRA~1/Java/jdk1.8.0_144 # Android project configuration variables -PROJECT_NAME ?= raylib_game +PROJECT_NAME ?= standard_game PROJECT_LIBRARY_NAME ?= main PROJECT_BUILD_PATH ?= android.$(PROJECT_NAME) PROJECT_RESOURCES_PATH ?= resources @@ -76,13 +77,13 @@ AR = $(ANDROID_TOOLCHAIN)/bin/aarch64-linux-android-ar # Compiler flags for arquitecture #CFLAGS = -std=c99 -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 --> Old 32bit -CFLAGS = -std=c99 -march=arm64-v8a +CFLAGS = -std=c99 -target aarch64 -mfix-cortex-a53-835769 # Compilation functions attributes options CFLAGS += -ffunction-sections -funwind-tables -fstack-protector-strong -fPIC # Compiler options for the linker CFLAGS += -Wall -Wa,--noexecstack -Wformat -Werror=format-security -no-canonical-prefixes # Preprocessor macro definitions -CFLAGS += -DANDROID -DPLATFORM_ANDROID -D__ANDROID_API__=16 +CFLAGS += -DANDROID -DPLATFORM_ANDROID -D__ANDROID_API__=21 # Paths containing required header files INCLUDE_PATHS = -I. -I$(RAYLIB_PATH)/release/include -I$(RAYLIB_PATH)/src/external/android/native_app_glue @@ -93,11 +94,11 @@ LDFLAGS += -Wl,--build-id -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl # Force linking of library module to define symbol LDFLAGS += -u ANativeActivity_onCreate # Library paths containing required libs -LDFLAGS += -L. -L$(PROJECT_BUILD_PATH)/obj -L$(PROJECT_BUILD_PATH)/lib/arm64-v8a +LDFLAGS += -L. -L$(PROJECT_BUILD_PATH)/obj -L$(PROJECT_BUILD_PATH)/lib/arm64-v8a -L$(ANDROID_TOOLCHAIN)\sysroot\usr\lib # Define any libraries to link into executable # if you want to link libraries (libname.so or libname.a), use the -lname -LDLIBS = -lraylib -lnative_app_glue -llog -landroid -lEGL -lGLESv2 -lOpenSLES -latomic -lc -lm -ldl +LDLIBS = -lm -lc -lraylib -llog -landroid -lEGL -lGLESv2 -lOpenSLES -ldl # Generate target objects list from PROJECT_SOURCE_FILES OBJS = $(patsubst %.c, $(PROJECT_BUILD_PATH)/obj/%.o, $(PROJECT_SOURCE_FILES)) @@ -111,7 +112,6 @@ all: create_temp_project_dirs \ generate_android_manifest \ generate_apk_keystore \ config_project_package \ - compile_native_app_glue \ compile_project_code \ compile_project_class \ compile_project_class_dex \ @@ -211,7 +211,7 @@ generate_apk_keystore: # Config project package and resource using AndroidManifest.xml and res/values/strings.xml # NOTE: Generates resources file: src/com/$(APP_COMPANY_NAME)/$(APP_PRODUCT_NAME)/R.java config_project_package: - $(ANDROID_BUILD_TOOLS)/aapt package -f -m -S $(PROJECT_BUILD_PATH)/res -J $(PROJECT_BUILD_PATH)/src -M $(PROJECT_BUILD_PATH)/AndroidManifest.xml -I $(ANDROID_HOME)/platforms/android-16/android.jar + $(ANDROID_BUILD_TOOLS)/aapt package -f -m -S $(PROJECT_BUILD_PATH)/res -J $(PROJECT_BUILD_PATH)/src -M $(PROJECT_BUILD_PATH)/AndroidManifest.xml -I $(ANDROID_HOME)/platforms/android-$(ANDROID_API_VERSION)/android.jar # Compile native_app_glue code as static library: obj/libnative_app_glue.a compile_native_app_glue: @@ -229,7 +229,7 @@ $(PROJECT_BUILD_PATH)/obj/%.o:%.c # Compile project .java code into .class (Java bytecode) compile_project_class: - $(JAVA_HOME)/bin/javac -verbose -source 1.7 -target 1.7 -d $(PROJECT_BUILD_PATH)/obj -bootclasspath $(JAVA_HOME)/jre/lib/rt.jar -classpath $(ANDROID_HOME)/platforms/android-16/android.jar;$(PROJECT_BUILD_PATH)/obj -sourcepath $(PROJECT_BUILD_PATH)/src $(PROJECT_BUILD_PATH)/src/com/$(APP_COMPANY_NAME)/$(APP_PRODUCT_NAME)/R.java $(PROJECT_BUILD_PATH)/src/com/$(APP_COMPANY_NAME)/$(APP_PRODUCT_NAME)/NativeLoader.java + $(JAVA_HOME)/bin/javac -verbose -source 1.7 -target 1.7 -d $(PROJECT_BUILD_PATH)/obj -bootclasspath $(JAVA_HOME)/jre/lib/rt.jar -classpath $(ANDROID_HOME)/platforms/android-$(ANDROID_API_VERSION)/android.jar;$(PROJECT_BUILD_PATH)/obj -sourcepath $(PROJECT_BUILD_PATH)/src $(PROJECT_BUILD_PATH)/src/com/$(APP_COMPANY_NAME)/$(APP_PRODUCT_NAME)/R.java $(PROJECT_BUILD_PATH)/src/com/$(APP_COMPANY_NAME)/$(APP_PRODUCT_NAME)/NativeLoader.java # Compile .class files into Dalvik executable bytecode (.dex) # NOTE: Since Android 5.0, Dalvik interpreter (JIT) has been replaced by ART (AOT) @@ -240,7 +240,7 @@ compile_project_class_dex: # NOTE: Requires compiled classes.dex and lib$(PROJECT_LIBRARY_NAME).so # NOTE: Use -A resources to define additional directory in which to find raw asset files create_project_apk_package: - $(ANDROID_BUILD_TOOLS)/aapt package -f -M $(PROJECT_BUILD_PATH)/AndroidManifest.xml -S $(PROJECT_BUILD_PATH)/res -A $(PROJECT_BUILD_PATH)/assets -I $(ANDROID_HOME)/platforms/android-16/android.jar -F $(PROJECT_BUILD_PATH)/bin/$(PROJECT_NAME).unsigned.apk $(PROJECT_BUILD_PATH)/bin + $(ANDROID_BUILD_TOOLS)/aapt package -f -M $(PROJECT_BUILD_PATH)/AndroidManifest.xml -S $(PROJECT_BUILD_PATH)/res -A $(PROJECT_BUILD_PATH)/assets -I $(ANDROID_HOME)/platforms/android-$(ANDROID_API_VERSION)/android.jar -F $(PROJECT_BUILD_PATH)/bin/$(PROJECT_NAME).unsigned.apk $(PROJECT_BUILD_PATH)/bin cd $(PROJECT_BUILD_PATH) && $(ANDROID_BUILD_TOOLS)/aapt add bin/$(PROJECT_NAME).unsigned.apk lib/arm64-v8a/lib$(PROJECT_LIBRARY_NAME).so $(PROJECT_SHARED_LIBS) # Create signed APK package using generated Key: bin/$(PROJECT_NAME).signed.apk |
