summaryrefslogtreecommitdiffhomepage
path: root/templates
diff options
context:
space:
mode:
authorDavid Reid <[email protected]>2018-07-01 20:52:50 +1000
committerDavid Reid <[email protected]>2018-07-01 20:52:50 +1000
commitfec0a4f2e37e63cdbc531f6914a55442d520a104 (patch)
tree546a30f60fbe76abb24a2514ba824ec210674c36 /templates
parentbce7a7b5765defcfb5692dc73e7251c8dd3e9fe2 (diff)
parent7dedb84fd07f81cbe3f7c299b7e6e3f4e9959391 (diff)
downloadraylib-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/Makefile23
-rw-r--r--templates/simple_game/Makefile27
-rw-r--r--templates/standard_game/Makefile27
-rw-r--r--templates/standard_game/Makefile.Android18
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