aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMurray Campbell <MurrayIRC@gmail.com>2018-10-24 14:37:42 -0500
committerGitHub <noreply@github.com>2018-10-24 14:37:42 -0500
commitbcbe042dd2a9a07146eea62c844287fe2bfdc141 (patch)
treee2bdadb6ad9263df43c5504d497860961caa02af
parent03fb5499a0f2c4b45ed1b2655a6e1e77221ed46a (diff)
parentd916ac9b5dc4966aca1fb3ac4aaf3aead5ed9d4f (diff)
downloadraylib-bcbe042dd2a9a07146eea62c844287fe2bfdc141.tar.gz
raylib-bcbe042dd2a9a07146eea62c844287fe2bfdc141.zip
Merge pull request #8 from MurrayIRC/vscode-updates
Vscode updates
-rw-r--r--projects/VSCode/.vscode/launch.json98
-rw-r--r--projects/VSCode/.vscode/tasks.json68
-rw-r--r--projects/VSCode/Makefile17
3 files changed, 61 insertions, 122 deletions
diff --git a/projects/VSCode/.vscode/launch.json b/projects/VSCode/.vscode/launch.json
index 8c8a67ea..b65aa1c1 100644
--- a/projects/VSCode/.vscode/launch.json
+++ b/projects/VSCode/.vscode/launch.json
@@ -5,67 +5,7 @@
"version": "0.2.0",
"configurations": [
{
- "name": "(WIN) Debug",
- "type": "cppdbg",
- "request": "launch",
- "program": "${workspaceFolder}/game.exe",
- "args": [],
- "stopAtEntry": false,
- "cwd": "${workspaceFolder}",
- "environment": [],
- "externalConsole": false,
- "MIMode": "gdb",
- "miDebuggerPath": "C:/raylib/mingw/bin/gdb.exe",
- "setupCommands": [
- {
- "description": "Enable pretty-printing for gdb",
- "text": "-enable-pretty-printing",
- "ignoreFailures": false
- }
- ],
- "preLaunchTask": "(WIN) build debug"
- },
- {
- "name": "(WIN) Run",
- "type": "cppdbg",
- "request": "launch",
- "program": "${workspaceFolder}/game.exe",
- "args": [],
- "stopAtEntry": false,
- "cwd": "${workspaceFolder}",
- "environment": [],
- "externalConsole": false,
- "MIMode": "gdb",
- "miDebuggerPath": "C:/raylib/mingw/bin/gdb.exe",
- "setupCommands": [
- {
- "description": "Enable pretty-printing for gdb",
- "text": "-enable-pretty-printing",
- "ignoreFailures": false
- }
- ],
- "preLaunchTask": "(WIN) build release"
- },
- {
- "name": "(OSX) Debug",
- "type": "lldb",
- "request": "launch",
- "program": "${workspaceFolder}/game",
- "args": [],
- "cwd": "${workspaceFolder}",
- "preLaunchTask": "(OSX) build debug"
- },
- {
- "name": "(OSX) Run",
- "type": "lldb",
- "request": "launch",
- "program": "${workspaceFolder}/game",
- "args": [],
- "cwd": "${workspaceFolder}",
- "preLaunchTask": "(OSX) build release"
- },
- {
- "name": "(GNU) Debug",
+ "name": "Debug",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/game",
@@ -75,7 +15,6 @@
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
- "miDebuggerPath": "/usr/bin/gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
@@ -83,28 +22,39 @@
"ignoreFailures": false
}
],
- "preLaunchTask": "(GNU) build debug"
+ "windows": {
+ "miDebuggerPath": "C:/raylib/mingw/bin/gdb.exe",
+ },
+ "osx": {
+ "MIMode": "lldb"
+ },
+ "linux": {
+ "miDebuggerPath": "/usr/bin/gdb",
+ },
+ "preLaunchTask": "build debug"
},
{
- "name": "(GNU) Run",
+ "name": "Run",
"type": "cppdbg",
"request": "launch",
- "program": "${workspaceFolder}/game",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
+ "program": "${workspaceFolder}/game",
"MIMode": "gdb",
- "miDebuggerPath": "/usr/bin/gdb",
- "setupCommands": [
- {
- "description": "Enable pretty-printing for gdb",
- "text": "-enable-pretty-printing",
- "ignoreFailures": false
- }
- ],
- "preLaunchTask": "(GNU) build release"
+ "windows": {
+ "program": "${workspaceFolder}/game.exe",
+ "miDebuggerPath": "C:/raylib/mingw/bin/gdb.exe"
+ },
+ "osx": {
+ "MIMode": "lldb"
+ },
+ "linux": {
+ "miDebuggerPath": "/usr/bin/gdb"
+ },
+ "preLaunchTask": "build release",
}
]
}
diff --git a/projects/VSCode/.vscode/tasks.json b/projects/VSCode/.vscode/tasks.json
index d94a2d69..6106c05f 100644
--- a/projects/VSCode/.vscode/tasks.json
+++ b/projects/VSCode/.vscode/tasks.json
@@ -4,67 +4,47 @@
"version": "2.0.0",
"tasks": [
{
- "label": "(WIN) build release",
- "type": "process",
- "command": "C:/raylib/mingw/bin/mingw32-make.exe",
- "args": [
- "PLATFORM=PLATFORM_DESKTOP",
- "RAYLIB_PATH=C:/raylib/raylib",
- ],
- "group": "build"
- },
- {
- "label": "(WIN) build debug",
- "type": "process",
- "command": "C:/raylib/mingw/bin/mingw32-make.exe",
- "args": [
- "PLATFORM=PLATFORM_DESKTOP",
- "RAYLIB_PATH=C:/raylib/raylib",
- "DEBUGGING=TRUE"
- ],
- "group": "build"
- },
- {
- "label": "(OSX) build debug",
- "type": "process",
- "command": "make",
- "args": [
- "PLATFORM=PLATFORM_DESKTOP",
- "RAYLIB_PATH=<path_to_raylib>",
- "DEBUGGING=TRUE"
- ],
- "group": "build"
- },
- {
- "label": "(OSX) build release",
- "type": "process",
- "command": "make",
- "args": [
- "PLATFORM=PLATFORM_DESKTOP",
- "RAYLIB_PATH=<path_to_raylib>",
- ],
- "group": "build"
- },
- {
- "label": "(GNU) build debug",
+ "label": "build debug",
"type": "process",
"command": "make",
"args": [
"PLATFORM=PLATFORM_DESKTOP",
"DEBUGGING=TRUE"
],
+ "windows": {
+ "command": "C:/raylib/mingw/bin/mingw32-make.exe",
+ "args": [
+ "RAYLIB_PATH=C:/raylib/raylib"
+ ],
+ },
+ "osx": {
+ "args": [
+ "RAYLIB_PATH=/Users/murray/work/ray/raylib"
+ ],
+ },
"group": {
"kind": "build",
"isDefault": true
}
},
{
- "label": "(GNU) build release",
+ "label": "build release",
"type": "process",
"command": "make",
"args": [
"PLATFORM=PLATFORM_DESKTOP",
],
+ "windows": {
+ "command": "C:/raylib/mingw/bin/mingw32-make.exe",
+ "args": [
+ "RAYLIB_PATH=C:/raylib/raylib",
+ ],
+ },
+ "osx": {
+ "args": [
+ "RAYLIB_PATH=/Users/murray/work/ray/raylib",
+ ],
+ },
"group": "build"
}
]
diff --git a/projects/VSCode/Makefile b/projects/VSCode/Makefile
index 9794c1ab..83e26053 100644
--- a/projects/VSCode/Makefile
+++ b/projects/VSCode/Makefile
@@ -151,6 +151,9 @@ ifeq ($(PLATFORM),PLATFORM_DESKTOP)
ifeq ($(PLATFORM_OS),LINUX)
MAKE = make
endif
+ ifeq ($(PLATFORM_OS),OSX)
+ MAKE = make
+ endif
endif
# Define compiler flags:
@@ -279,17 +282,22 @@ ifeq ($(PLATFORM),PLATFORM_WEB)
LDLIBS = $(RAYLIB_RELEASE_PATH)/libraylib.bc
endif
+# Define a recursive wildcard function
+rwildcard=$(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2) $(filter $(subst *,%,$2),$d))
+
# Define all source files required
-PROJECT_SOURCE_FILES ?= main.c
+SRC_DIR = src
+OBJ_DIR = obj
# Define all object files from source files
-OBJS = $(patsubst %.c, %.o, $(PROJECT_SOURCE_FILES))
+SRC = $(call rwildcard, *.c, *.h)
+OBJS = $(SRC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o)
# For Android platform we call a custom Makefile.Android
ifeq ($(PLATFORM),PLATFORM_ANDROID)
MAKEFILE_PARAMS = -f Makefile.Android
export PROJECT_NAME
- export PROJECT_SOURCE_FILES
+ export SRC_DIR
else
MAKEFILE_PARAMS = $(PROJECT_NAME)
endif
@@ -305,7 +313,8 @@ $(PROJECT_NAME): $(OBJS)
# Compile source files
# NOTE: This pattern will compile every module defined on $(OBJS)
-%.o: %.c
+#%.o: %.c
+$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c
$(CC) -c $< -o $@ $(CFLAGS) $(INCLUDE_PATHS) -D$(PLATFORM)
# Clean everything