[Build] Use CMAKE_BINARY_DIR for output paths and version.h include
version.h is now found via CMAKE_BINARY_DIR on the include path instead of a hardcoded "build/version.h" path. This allows out-of-tree and multi-config builds to each generate and find their own version header without colliding.
This commit is contained in:
@@ -35,10 +35,11 @@ else()
|
||||
set(XE_PLATFORM_NAME "Linux")
|
||||
endif()
|
||||
|
||||
# Output directories (use PROJECT_SOURCE_DIR so VS and Ninja share the same paths)
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/build/bin/${XE_PLATFORM_NAME}")
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/build/bin/${XE_PLATFORM_NAME}")
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_SOURCE_DIR}/build/obj/${XE_PLATFORM_NAME}")
|
||||
# Output directories — use CMAKE_BINARY_DIR so each build tree (build/, build-arm64/,
|
||||
# build/vs-arm64/, etc.) gets its own output paths.
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/${XE_PLATFORM_NAME}")
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/${XE_PLATFORM_NAME}")
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/obj/${XE_PLATFORM_NAME}")
|
||||
|
||||
# Create scratch/ if needed
|
||||
file(MAKE_DIRECTORY "${PROJECT_SOURCE_DIR}/scratch")
|
||||
@@ -53,6 +54,7 @@ include(cmake/XeniaHelpers.cmake)
|
||||
include_directories(
|
||||
${PROJECT_SOURCE_DIR}
|
||||
${PROJECT_SOURCE_DIR}/src
|
||||
${CMAKE_BINARY_DIR}
|
||||
${PROJECT_SOURCE_DIR}/third_party
|
||||
)
|
||||
|
||||
|
||||
@@ -39,8 +39,7 @@
|
||||
#include "xenia/ui/ui_event.h"
|
||||
#include "xenia/ui/virtual_key.h"
|
||||
|
||||
// Autogenerated by `xb premake`.
|
||||
#include "build/version.h"
|
||||
#include "version.h"
|
||||
|
||||
DECLARE_bool(debug);
|
||||
|
||||
|
||||
@@ -15,8 +15,7 @@
|
||||
#include "xenia/base/platform_win.h"
|
||||
#include "xenia/base/string.h"
|
||||
|
||||
// Autogenerated by `xb premake`.
|
||||
#include "build/version.h"
|
||||
#include "version.h"
|
||||
|
||||
// For RequestWin32MMCSS.
|
||||
#include <dwmapi.h>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
#include "third_party/snappy/snappy-sinksource.h"
|
||||
#include "third_party/snappy/snappy.h"
|
||||
|
||||
#include "build/version.h"
|
||||
#include "version.h"
|
||||
#include "xenia/base/assert.h"
|
||||
#include "xenia/base/filesystem.h"
|
||||
#include "xenia/base/logging.h"
|
||||
|
||||
@@ -17,8 +17,7 @@
|
||||
#include "xenia/ui/windowed_app.h"
|
||||
#include "xenia/ui/windowed_app_context_win.h"
|
||||
|
||||
// Autogenerated by `xb premake`.
|
||||
#include "build/version.h"
|
||||
#include "version.h"
|
||||
|
||||
#include <Psapi.h>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user