aboutsummaryrefslogtreecommitdiff
path: root/libs/archive/CMakeLists.txt
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-02-11 02:37:39 -0600
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-02-11 02:37:39 -0600
commit7ee008e150bc5bcf76082d726f719ee0fdfda982 (patch)
tree27fb39be241fdb5ac2734c574de678977d1856d0 /libs/archive/CMakeLists.txt
Fluorine Manager: full Linux port of Mod Organizer 2
Complete native Linux port with FUSE-based virtual filesystem, Proton/umu-run integration, and Flatpak packaging. Key features: - FUSE VFS replacing Windows USVFS (in-process + standalone helper for Flatpak) - Proton/GE-Proton/umu-run launcher with env var forwarding - Flatpak support (sandbox-aware VFS, NXM handler, umu-run) - Wine prefix management UI - Case-insensitive path resolution for Linux filesystems - QSettings-safe INI handling (avoids Bethesda INI corruption) - Portable instance support with auto-generated launcher scripts Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'libs/archive/CMakeLists.txt')
-rw-r--r--libs/archive/CMakeLists.txt37
1 files changed, 37 insertions, 0 deletions
diff --git a/libs/archive/CMakeLists.txt b/libs/archive/CMakeLists.txt
new file mode 100644
index 0000000..fa5d783
--- /dev/null
+++ b/libs/archive/CMakeLists.txt
@@ -0,0 +1,37 @@
+cmake_minimum_required(VERSION 3.16)
+
+include(CMakePackageConfigHelpers)
+
+project(archive)
+
+set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
+
+add_subdirectory(src)
+
+configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/config.cmake.in
+ "${CMAKE_CURRENT_BINARY_DIR}/mo2-archive-config.cmake"
+ INSTALL_DESTINATION "lib/cmake/mo2-archive"
+ NO_SET_AND_CHECK_MACRO
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
+)
+
+file(READ "${CMAKE_CURRENT_SOURCE_DIR}/src/version.rc" archive_version)
+string(REGEX MATCH "#define VER_FILEVERSION[ \t]*([0-9]+),([0-9]+),([0-9]+)" _ ${archive_version})
+set(archive_version_major ${CMAKE_MATCH_1})
+set(archive_version_minor ${CMAKE_MATCH_2})
+set(archive_version_patch ${CMAKE_MATCH_3})
+
+message(STATUS "[MO2] Found version '${archive_version_major}.${archive_version_minor}.${archive_version_patch}'.")
+
+write_basic_package_version_file(
+ "${CMAKE_CURRENT_BINARY_DIR}/mo2-archive-config-version.cmake"
+ VERSION "${archive_version_major}.${archive_version_minor}.${archive_version_patch}"
+ COMPATIBILITY AnyNewerVersion
+)
+
+install(FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/mo2-archive-config.cmake
+ ${CMAKE_CURRENT_BINARY_DIR}/mo2-archive-config-version.cmake
+ DESTINATION lib/cmake/mo2-archive
+)