summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsanine <sanine.not@pm.me>2022-08-21 21:54:47 -0500
committersanine <sanine.not@pm.me>2022-08-21 21:54:47 -0500
commit4ffe0ff4ac30361ea2a35dcfa07ca560ed865631 (patch)
treeec522e57b4e27f8c5388ef2175b0a77dd4537deb
parent74e48c197a57c9f7920ce048c9bf4b59d5303e18 (diff)
build with clang on visual studio
-rw-r--r--.gitignore2
-rw-r--r--CMakeLists.txt14
-rw-r--r--CMakeSettings.json27
-rw-r--r--libs/glfw-3.3.8/CMakeLists.txt8
-rw-r--r--libs/honeysuckle/CMakeLists.txt3
5 files changed, 41 insertions, 13 deletions
diff --git a/.gitignore b/.gitignore
index 3192b45..a2dc543 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,5 @@ build/*
*.#*
demo/plagiarism.dae
*.swp
+out
+.vs
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a76d76b..b5e8502 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,8 +1,10 @@
cmake_minimum_required(VERSION 3.2)
project(honey_engine_demo)
-set(CMAKE_C_FLAGS "-Wall -Wextra -Werror -Wfatal-errors -Wpedantic")
-set(CMAKE_C_FLAGS "-g")
+if (UNIX)
+ set(CMAKE_C_FLAGS "-Wall -Wextra -Werror -Wfatal-errors -Wpedantic")
+ set(CMAKE_C_FLAGS "-g")
+endif()
find_package(OpenGL REQUIRED)
@@ -10,7 +12,7 @@ set(SRC_ROOT ${CMAKE_SOURCE_DIR}/src)
set(LIB_ROOT ${CMAKE_SOURCE_DIR}/libs)
include_directories(
- ${LUA_INCLUDE_DIR}
+ ${LIB_ROOT}/lua-5.1.5/src
${CMAKE_SOURCE_DIR}/src
${LIB_ROOT}/honeysuckle/src
${LIB_ROOT}/glfw-3.3.8/include
@@ -44,11 +46,11 @@ set(SOURCE_FILES
add_executable(honey ${SOURCE_FILES})
-set(LIBRARIES lua5.1 honeysuckle assimp cairo m)
+set(LIBRARIES lua5.1 honeysuckle assimp glfw)
if (WIN32)
- set(LIBRARIES ${LIBRARIES} glfw3 opengl32)
+ set(LIBRARIES ${LIBRARIES} opengl32)
else()
- set(LIBRARIES ${LIBRARIES} glfw GL dl)
+ set(LIBRARIES ${LIBRARIES} GL dl m)
endif()
target_link_libraries(honey ${LIBRARIES})
diff --git a/CMakeSettings.json b/CMakeSettings.json
new file mode 100644
index 0000000..7313f2b
--- /dev/null
+++ b/CMakeSettings.json
@@ -0,0 +1,27 @@
+{
+ "configurations": [
+ {
+ "name": "x64-Debug",
+ "generator": "Ninja",
+ "configurationType": "Debug",
+ "inheritEnvironments": [ "msvc_x64_x64" ],
+ "buildRoot": "${projectDir}\\out\\build\\${name}",
+ "installRoot": "${projectDir}\\out\\install\\${name}",
+ "cmakeCommandArgs": "",
+ "buildCommandArgs": "",
+ "ctestCommandArgs": ""
+ },
+ {
+ "name": "x64-Clang-Debug",
+ "generator": "Ninja",
+ "configurationType": "Debug",
+ "buildRoot": "${projectDir}\\out\\build\\${name}",
+ "installRoot": "${projectDir}\\out\\install\\${name}",
+ "cmakeCommandArgs": "",
+ "buildCommandArgs": "",
+ "ctestCommandArgs": "",
+ "inheritEnvironments": [ "clang_cl_x64_x64" ],
+ "variables": []
+ }
+ ]
+} \ No newline at end of file
diff --git a/libs/glfw-3.3.8/CMakeLists.txt b/libs/glfw-3.3.8/CMakeLists.txt
index 7506916..ba96561 100644
--- a/libs/glfw-3.3.8/CMakeLists.txt
+++ b/libs/glfw-3.3.8/CMakeLists.txt
@@ -19,10 +19,10 @@ endif()
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
-option(GLFW_BUILD_EXAMPLES "Build the GLFW example programs" ON)
-option(GLFW_BUILD_TESTS "Build the GLFW test programs" ON)
-option(GLFW_BUILD_DOCS "Build the GLFW documentation" ON)
-option(GLFW_INSTALL "Generate installation target" ON)
+option(GLFW_BUILD_EXAMPLES "Build the GLFW example programs" OFF)
+option(GLFW_BUILD_TESTS "Build the GLFW test programs" OFF)
+option(GLFW_BUILD_DOCS "Build the GLFW documentation" OFF)
+option(GLFW_INSTALL "Generate installation target" OFF)
option(GLFW_VULKAN_STATIC "Assume the Vulkan loader is linked with the application" OFF)
include(GNUInstallDirs)
diff --git a/libs/honeysuckle/CMakeLists.txt b/libs/honeysuckle/CMakeLists.txt
index 91222d2..1e16f40 100644
--- a/libs/honeysuckle/CMakeLists.txt
+++ b/libs/honeysuckle/CMakeLists.txt
@@ -3,9 +3,6 @@ project(honeysuckle
VERSION 0.1.0
DESCRIPTION "A C library to make writing lua bindings simple")
-find_package(Lua51 REQUIRED)
-Include_directories(${LUA_INCLUDE_DIR})
-
# build and link the library
set(HS_ROOT ${honeysuckle_SOURCE_DIR}/src)
set(HONEYSUCKLE_SOURCES