Kaynağa Gözat

Simplify build folders

Daniele Bartolini 9 yıl önce
ebeveyn
işleme
2ef6dc249d
7 değiştirilmiş dosya ile 134 ekleme ve 188 silme
  1. 1 1
      .appveyor.yml
  2. 3 3
      .travis.yml
  3. 43 47
      makefile
  4. 16 16
      scripts/genie.lua
  5. 69 0
      scripts/level-editor.lua
  6. 0 119
      scripts/tools.lua
  7. 2 2
      tools/config.vala

+ 1 - 1
.appveyor.yml

@@ -14,4 +14,4 @@ configuration:
   - release
 
 build:
-  project: build/engine/projects/vs2013/crown.sln
+  project: build/projects/vs2013/crown.sln

+ 3 - 3
.travis.yml

@@ -13,9 +13,9 @@ before_install:
   - sudo apt-get install -y libxrandr-dev
 
 script:
-  - make engine-linux-debug64       && ./build/engine/linux64/bin/crown-debug --run-unit-tests
-  - make engine-linux-development64 && ./build/engine/linux64/bin/crown-development --run-unit-tests
-  - make engine-linux-release64     && ./build/engine/linux64/bin/crown-release --run-unit-tests
+  - make linux-debug64       && ./build/linux64/bin/crown-debug --run-unit-tests
+  - make linux-development64 && ./build/linux64/bin/crown-development --run-unit-tests
+  - make linux-release64     && ./build/linux64/bin/crown-release --run-unit-tests
 
 notifications:
   email: false

+ 43 - 47
makefile

@@ -12,63 +12,59 @@ endif
 
 GENIE=3rdparty/bx/tools/bin/$(OS)/genie
 
-build/engine/projects/android:
+build/projects/android:
 	$(GENIE) --file=scripts/genie.lua --with-luajit --with-openal --with-bullet --compiler=android-arm gmake
-engine-android-arm-debug: build/engine/projects/android
-	make -R -C build/engine/projects/android config=debug
-engine-android-arm-development: build/engine/projects/android
-	make -R -C build/engine/projects/android config=development
-engine-android-arm-release: build/engine/projects/android
-	make -R -C build/engine/projects/android config=release
-engine-android-arm: engine-android-arm-debug engine-android-arm-development engine-android-arm-release
+android-arm-debug: build/projects/android
+	make -R -C build/projects/android config=debug
+android-arm-development: build/projects/android
+	make -R -C build/projects/android config=development
+android-arm-release: build/projects/android
+	make -R -C build/projects/android config=release
+android-arm: android-arm-debug android-arm-development android-arm-release
 
-build/engine/projects/linux:
+build/projects/linux:
 	$(GENIE) --file=scripts/genie.lua --with-luajit --with-openal --with-bullet --with-tools --compiler=linux-gcc gmake
-engine-linux-debug32: build/engine/projects/linux
-	make -R -C build/engine/projects/linux config=debug32
-engine-linux-development32: build/engine/projects/linux
-	make -R -C build/engine/projects/linux config=development32
-engine-linux-release32: build/engine/projects/linux
-	make -R -C build/engine/projects/linux config=release32
-engine-linux-debug64: build/engine/projects/linux
-	make -R -C build/engine/projects/linux config=debug64
-engine-linux-development64: build/engine/projects/linux
-	make -R -C build/engine/projects/linux config=development64
-engine-linux-release64: build/engine/projects/linux
-	make -R -C build/engine/projects/linux config=release64
-engine-linux: engine-linux-debug32 engine-linux-development32 engine-linux-release32 engine-linux-debug64 engine-linux-development64 engine-linux-release64
+linux-debug32: build/projects/linux
+	make -R -C build/projects/linux config=debug32
+linux-development32: build/projects/linux
+	make -R -C build/projects/linux config=development32
+linux-release32: build/projects/linux
+	make -R -C build/projects/linux config=release32
+linux-debug64: build/projects/linux
+	make -R -C build/projects/linux config=debug64
+linux-development64: build/projects/linux
+	make -R -C build/projects/linux config=development64
+linux-release64: build/projects/linux
+	make -R -C build/projects/linux config=release64
+linux: linux-debug32 linux-development32 linux-release32 linux-debug64 linux-development64 linux-release64
 
-build/engine/projects/vs2013:
+build/projects/vs2013:
 	$(GENIE) --file=scripts\genie.lua --with-luajit --with-openal --with-bullet --with-tools vs2013
-engine-windows-debug32: build/engine/projects/vs2013
-	devenv build/engine/projects/vs2013/crown.sln /Build "debug|Win32"
-engine-windows-development32: build/engine/projects/vs2013
-	devenv build/engine/projects/vs2013/crown.sln /Build "development|Win32"
-engine-windows-release32: build/engine/projects/vs2013
-	devenv build/engine/projects/vs2013/crown.sln /Build "release|Win32"
-engine-windows-debug64: build/engine/projects/vs2013
-	devenv build/engine/projects/vs2013/crown.sln /Build "debug|x64"
-engine-windows-development64: build/engine/projects/vs2013
-	devenv build/engine/projects/vs2013/crown.sln /Build "development|x64"
-engine-windows-release64: build/engine/projects/vs2013
-	devenv build/engine/projects/vs2013/crown.sln /Build "release|x64"
+windows-debug32: build/projects/vs2013
+	devenv build/projects/vs2013/crown.sln /Build "debug|Win32"
+windows-development32: build/projects/vs2013
+	devenv build/projects/vs2013/crown.sln /Build "development|Win32"
+windows-release32: build/projects/vs2013
+	devenv build/projects/vs2013/crown.sln /Build "release|Win32"
+windows-debug64: build/projects/vs2013
+	devenv build/projects/vs2013/crown.sln /Build "debug|x64"
+windows-development64: build/projects/vs2013
+	devenv build/projects/vs2013/crown.sln /Build "development|x64"
+windows-release64: build/projects/vs2013
+	devenv build/projects/vs2013/crown.sln /Build "release|x64"
 
 rebuild-glib-resources:
 	make -R -C tools/ui rebuild
 
-build/tools/projects/linux:
-	$(GENIE) --file=scripts/tools.lua --compiler=linux-gcc gmake
-tools-linux-debug64: build/tools/projects/linux engine-linux-development64
-	make -R -C build/tools/projects/linux config=debug
-tools-linux-release64: build/tools/projects/linux engine-linux-development64
-	make -R -C build/tools/projects/linux config=release
+tools-linux-debug64: linux-development64
+	make -R -C build/projects/linux level-editor config=debug
+tools-linux-release64: linux-development64
+	make -R -C build/projects/linux level-editor config=release
 
-build/tools/projects/mingw:
-	$(GENIE) --file=scripts/tools.lua --compiler=mingw gmake
-tools-mingw-debug64: build/tools/projects/mingw
-	make -R -C build/tools/projects/mingw config=debug
-tools-mingw-release64: build/tools/projects/mingw
-	make -R -C build/tools/projects/mingw config=release
+tools-mingw-debug64: mingw-development64
+	make -R -C build/projects/mingw level-editor config=debug
+tools-mingw-release64: mingw-development64
+	make -R -C build/projects/mingw level-editor config=release
 
 .PHONY: docs
 docs:

+ 16 - 16
scripts/genie.lua

@@ -6,7 +6,6 @@
 CROWN_DIR = (path.getabsolute("..") .. "/")
 local CROWN_THIRD_DIR  = (CROWN_DIR .. "3rdparty/")
 local CROWN_BUILD_DIR  = (CROWN_DIR .. "build/")
-local CROWN_ENGINE_DIR = (CROWN_BUILD_DIR .. "engine/")
 BGFX_DIR = (CROWN_DIR .. "3rdparty/bgfx/")
 BX_DIR = (CROWN_DIR .. "3rdparty/bx/")
 
@@ -54,7 +53,7 @@ dofile ("toolchain.lua")
 dofile (BGFX_DIR .. "scripts/bgfx.lua")
 dofile ("crown.lua")
 
-toolchain(CROWN_ENGINE_DIR, CROWN_THIRD_DIR)
+toolchain(CROWN_BUILD_DIR, CROWN_THIRD_DIR)
 
 group "libs"
 bgfxProject("", "StaticLib", os.is("windows") and { "BGFX_CONFIG_RENDERER_DIRECT3D9=1" } or {})
@@ -73,6 +72,7 @@ crown_project("", "ConsoleApp", {})
 
 if _OPTIONS["with-tools"] then
 group "tools"
+	dofile ("level-editor.lua")
 	dofile ("shaderc.lua")
 	dofile ("texturec.lua")
 end
@@ -80,30 +80,30 @@ end
 -- Install
 configuration { "x32", "linux-*" }
 	postbuildcommands {
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/linux_x86/luajit " .. CROWN_ENGINE_DIR .. "linux32/bin",
-		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "              .. CROWN_ENGINE_DIR .. "linux32/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/linux_x86/luajit " .. CROWN_BUILD_DIR .. "linux32/bin",
+		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "              .. CROWN_BUILD_DIR .. "linux32/bin",
 	}
 
 configuration { "x64", "linux-*" }
 	postbuildcommands {
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/linux_x64/luajit " .. CROWN_ENGINE_DIR .. "linux64/bin",
-		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "              .. CROWN_ENGINE_DIR .. "linux64/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/linux_x64/luajit " .. CROWN_BUILD_DIR .. "linux64/bin",
+		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "              .. CROWN_BUILD_DIR .. "linux64/bin",
 	}
 
 configuration { "x32", "vs*" }
 	postbuildcommands {
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/luajit.exe " .. CROWN_ENGINE_DIR .. "win32/bin",
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/lua51.lib "  .. CROWN_ENGINE_DIR .. "win32/bin",
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/lua51.exp "  .. CROWN_ENGINE_DIR .. "win32/bin",
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/lua51.dll "  .. CROWN_ENGINE_DIR .. "win32/bin",
-		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "                .. CROWN_ENGINE_DIR .. "win32/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/luajit.exe " .. CROWN_BUILD_DIR .. "win32/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/lua51.lib "  .. CROWN_BUILD_DIR .. "win32/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/lua51.exp "  .. CROWN_BUILD_DIR .. "win32/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x86/lua51.dll "  .. CROWN_BUILD_DIR .. "win32/bin",
+		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "                .. CROWN_BUILD_DIR .. "win32/bin",
 	}
 
 configuration { "x64", "vs*" }
 	postbuildcommands {
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/luajit.exe " .. CROWN_ENGINE_DIR .. "win64/bin",
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/lua51.lib "  .. CROWN_ENGINE_DIR .. "win64/bin",
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/lua51.exp "  .. CROWN_ENGINE_DIR .. "win64/bin",
-		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/lua51.dll "  .. CROWN_ENGINE_DIR .. "win64/bin",
-		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "                .. CROWN_ENGINE_DIR .. "win64/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/luajit.exe " .. CROWN_BUILD_DIR .. "win64/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/lua51.lib "  .. CROWN_BUILD_DIR .. "win64/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/lua51.exp "  .. CROWN_BUILD_DIR .. "win64/bin",
+		"cp    " .. CROWN_THIRD_DIR .. "luajit/pre/win_x64/lua51.dll "  .. CROWN_BUILD_DIR .. "win64/bin",
+		"cp -r " .. CROWN_THIRD_DIR .. "luajit/src/jit "                .. CROWN_BUILD_DIR .. "win64/bin",
 	}

+ 69 - 0
scripts/level-editor.lua

@@ -0,0 +1,69 @@
+--
+-- Copyright (c) 2012-2017 Daniele Bartolini and individual contributors.
+-- License: https://github.com/taylor001/crown/blob/master/LICENSE
+--
+
+local CROWN_DIR = (path.getabsolute("..") .. "/")
+local CROWN_BUILD_DIR = (CROWN_DIR .. "build/")
+
+-- FIXME: Fix this in GENie
+premake.valac.valac = premake.valac.valac .. " --gresources=" .. CROWN_DIR .. "tools/ui/resources.xml" .. " --target-glib=2.38"
+
+project "level-editor"
+	kind "ConsoleApp"
+	language "Vala"
+
+	configuration { "debug" }
+		defines {
+			"CROWN_DEBUG",
+		}
+
+	configuration { "linux" }
+		defines {
+			"CROWN_PLATFORM_LINUX"
+		}
+
+	configuration { "windows" }
+		defines {
+			"CROWN_PLATFORM_WINDOWS"
+		}
+
+	configuration { "linux-*" }
+		targetdir (CROWN_BUILD_DIR .. "linux64" .. "/bin")
+		objdir (CROWN_BUILD_DIR .. "linux64" .. "/obj")
+
+	configuration { "mingw" }
+		targetdir (CROWN_BUILD_DIR .. "mingw64" .. "/bin")
+		objdir (CROWN_BUILD_DIR .. "mingw64" .. "/obj")
+
+	configuration {}
+
+	links {
+		"gdk-3.0",
+		"gee-0.8",
+		"gio-2.0",
+		"glib-2.0",
+		"gtk+-3.0",
+		"posix",
+	}
+
+	buildoptions {
+		"-lm",
+		"-Wno-deprecated-declarations",
+		"-Wno-incompatible-pointer-types",
+		"-Wno-discarded-qualifiers",
+		"-Wno-sign-compare",
+		"-Wno-unused-function",
+		"-Wno-unused-label",
+		"-Wno-unused-variable",
+		"-Wno-unused-parameter",
+		"-Wno-unused-but-set-variable",
+	}
+
+	files {
+		CROWN_DIR .. "tools/**.vala",
+		CROWN_DIR .. "tools/ui/resources.c",
+	}
+
+	configuration {}
+

+ 0 - 119
scripts/tools.lua

@@ -1,119 +0,0 @@
---
--- Copyright (c) 2012-2017 Daniele Bartolini and individual contributors.
--- License: https://github.com/taylor001/crown/blob/master/LICENSE
---
-
-solution "tools"
-language "Vala"
-
-configurations {
-	"debug",
-	"release",
-}
-
-local CROWN_DIR = (path.getabsolute("..") .. "/")
-local CROWN_BUILD_DIR = (CROWN_DIR .. "build/")
-local CROWN_TOOLS_DIR = (CROWN_BUILD_DIR .. "tools/")
-
-newoption
-{
-	trigger = "compiler",
-	value = "COMPILER",
-	description = "Choose compiler",
-	allowed =
-	{
-		{ "linux-gcc", "Linux (GCC compiler)" },
-		{ "mingw",     "MinGW"                },
-	}
-}
-
-if _ACTION == "gmake" then
-
-	if nil == _OPTIONS["compiler"] then
-		print("Choose a compiler!")
-		os.exit(1)
-	end
-
-	if "linux-gcc" == _OPTIONS["compiler"] then
-
-		if not os.is("linux") then
-			print("Action not valid in current OS.")
-		end
-
-		location(CROWN_TOOLS_DIR .. "projects/" .. "linux")
-
-	elseif "mingw" == _OPTIONS["compiler"] then
-
-		location(CROWN_TOOLS_DIR .. "projects/" .. "mingw")
-	end
-else
-	print("Invalid action.")
-	os.exit(1)
-end
-
-	-- FIXME: Fix this in GENie
-	premake.valac.valac = premake.valac.valac .. " --gresources=" .. CROWN_DIR .. "tools/ui/resources.xml" .. " --target-glib=2.38"
-
-	configuration { "linux-*" }
-		targetdir (CROWN_TOOLS_DIR .. "linux64" .. "/bin")
-		objdir (CROWN_TOOLS_DIR .. "linux64" .. "/obj")
-
-	configuration { "mingw" }
-		targetdir (CROWN_TOOLS_DIR .. "mingw64" .. "/bin")
-		objdir (CROWN_TOOLS_DIR .. "mingw64" .. "/obj")
-
-	configuration { "debug" }
-		targetsuffix "-debug"
-	configuration { "release" }
-		targetsuffix "-release"
-
-	project "level-editor"
-		kind "ConsoleApp"
-
-		configuration { "debug" }
-			flags {
-				"Symbols",
-			}
-			defines {
-				"CROWN_DEBUG",
-			}
-
-		configuration { "release" }
-			flags {
-				"Optimize"
-			}
-
-		configuration { "linux" }
-			defines {
-				"CROWN_PLATFORM_LINUX"
-			}
-
-		configuration { "windows" }
-			defines {
-				"CROWN_PLATFORM_WINDOWS"
-			}
-
-		configuration {}
-
-		links {
-			"gdk-3.0",
-			"gee-0.8",
-			"gio-2.0",
-			"glib-2.0",
-			"gtk+-3.0",
-			"posix",
-		}
-
-		buildoptions {
-			"-lm",
-			"-Wno-deprecated-declarations",
-			"-Wno-incompatible-pointer-types",
-			"-Wno-discarded-qualifiers",
-		}
-
-		files {
-			CROWN_DIR .. "tools/**.vala",
-			CROWN_DIR .. "tools/ui/resources.c",
-		}
-
-	configuration {}

+ 2 - 2
tools/config.vala

@@ -8,11 +8,11 @@ namespace Crown
 	const string CROWN_VERSION = "0.0.26";
 
 #if CROWN_PLATFORM_LINUX
-	const string ENGINE_DIR = "../../../engine/linux64/bin";
+	const string ENGINE_DIR = ".";
 	const string EXE_PREFIX = "./";
 	const string EXE_SUFFIX = "";
 #elif CROWN_PLATFORM_WINDOWS
-	const string ENGINE_DIR = "../../../engine/win64/bin";
+	const string ENGINE_DIR = ".";
 	const string EXE_PREFIX = "";
 	const string EXE_SUFFIX = ".exe";
 #endif