aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/luafilesystem
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/luafilesystem
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/luafilesystem')
-rw-r--r--vcpkg/ports/luafilesystem/CMakeLists.txt46
-rw-r--r--vcpkg/ports/luafilesystem/portfile.cmake33
-rw-r--r--vcpkg/ports/luafilesystem/unofficial-luafilesystem-config.cmake.in6
-rw-r--r--vcpkg/ports/luafilesystem/usage4
-rw-r--r--vcpkg/ports/luafilesystem/vcpkg.json19
5 files changed, 108 insertions, 0 deletions
diff --git a/vcpkg/ports/luafilesystem/CMakeLists.txt b/vcpkg/ports/luafilesystem/CMakeLists.txt
new file mode 100644
index 0000000..4ff75b9
--- /dev/null
+++ b/vcpkg/ports/luafilesystem/CMakeLists.txt
@@ -0,0 +1,46 @@
+cmake_minimum_required(VERSION 3.11)
+project(luafilesystem)
+
+find_path(LUA_INCLUDE_DIR lua.h PATH_SUFFIXES lua)
+find_library(LUA_LIBRARY lua)
+set(LFS_INCLUDES ${LUA_INCLUDE_DIR})
+set(LFS_LIBRARIES ${LUA_LIBRARY})
+
+add_library(lfs src/lfs.h src/lfs.c src/lfs.def)
+
+target_include_directories(lfs PRIVATE ${LFS_INCLUDES})
+target_link_libraries(lfs PRIVATE ${LFS_LIBRARIES})
+target_include_directories(lfs INTERFACE $<INSTALL_INTERFACE:include/luafilesystem>)
+
+install(TARGETS lfs
+ EXPORT "unofficial-${PROJECT_NAME}-targets"
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib)
+
+include(CMakePackageConfigHelpers)
+
+configure_package_config_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/unofficial-${PROJECT_NAME}-config.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-${PROJECT_NAME}-config.cmake"
+ INSTALL_DESTINATION "share/unofficial-${PROJECT_NAME}"
+)
+
+set(VERSION_FILE_PATH "${CMAKE_CURRENT_BINARY_DIR}/unofficial-${PROJECT_NAME}-config-version.cmake")
+write_basic_package_version_file(
+ "${VERSION_FILE_PATH}"
+ VERSION "${LFS_VERSION}"
+ COMPATIBILITY SameMajorVersion
+)
+
+install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/src/lfs.h" DESTINATION "include/luafilesystem")
+
+install(
+ FILES "${CMAKE_CURRENT_BINARY_DIR}/unofficial-${PROJECT_NAME}-config.cmake"
+ DESTINATION "share/unofficial-${PROJECT_NAME}"
+)
+
+install(
+ EXPORT "unofficial-${PROJECT_NAME}-targets"
+ NAMESPACE "unofficial::${PROJECT_NAME}::"
+ DESTINATION "share/unofficial-${PROJECT_NAME}")
diff --git a/vcpkg/ports/luafilesystem/portfile.cmake b/vcpkg/ports/luafilesystem/portfile.cmake
new file mode 100644
index 0000000..251280c
--- /dev/null
+++ b/vcpkg/ports/luafilesystem/portfile.cmake
@@ -0,0 +1,33 @@
+set(LUAFILESYSTEM_VERSION 1.8.0)
+set(LUAFILESYSTEM_REVISION v1_8_0)
+set(LUAFILESYSTEM_HASH 79d964f13ae43716281dc8521d2f128b22f2261234c443e242b857cfdf621e208bdf4512f8ba710baa113e9b3b71e2544609de65e2c483f569c243a5cf058247)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO keplerproject/luafilesystem
+ REF ${LUAFILESYSTEM_REVISION}
+ SHA512 ${LUAFILESYSTEM_HASH}
+ HEAD_REF master
+)
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/unofficial-luafilesystem-config.cmake.in" DESTINATION "${SOURCE_PATH}")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DLFS_VERSION="${VERSION}"
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_cmake_config_fixup(PACKAGE_NAME "unofficial-luafilesystem")
+
+file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+ "${CURRENT_PACKAGES_DIR}/debug/share"
+)
+
+# Handle copyright
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
+file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
diff --git a/vcpkg/ports/luafilesystem/unofficial-luafilesystem-config.cmake.in b/vcpkg/ports/luafilesystem/unofficial-luafilesystem-config.cmake.in
new file mode 100644
index 0000000..c03cd5e
--- /dev/null
+++ b/vcpkg/ports/luafilesystem/unofficial-luafilesystem-config.cmake.in
@@ -0,0 +1,6 @@
+@PACKAGE_INIT@
+
+include("${CMAKE_CURRENT_LIST_DIR}/unofficial-luafilesystem-targets.cmake")
+
+
+check_required_components(luafilesystem)
diff --git a/vcpkg/ports/luafilesystem/usage b/vcpkg/ports/luafilesystem/usage
new file mode 100644
index 0000000..2029ca3
--- /dev/null
+++ b/vcpkg/ports/luafilesystem/usage
@@ -0,0 +1,4 @@
+luafilesystem provides CMake targets:
+
+ find_package(unofficial-luafilesystem CONFIG REQUIRED)
+ target_link_libraries(main PRIVATE unofficial::luafilesystem::lfs)
diff --git a/vcpkg/ports/luafilesystem/vcpkg.json b/vcpkg/ports/luafilesystem/vcpkg.json
new file mode 100644
index 0000000..d261287
--- /dev/null
+++ b/vcpkg/ports/luafilesystem/vcpkg.json
@@ -0,0 +1,19 @@
+{
+ "name": "luafilesystem",
+ "version": "1.8.0",
+ "port-version": 7,
+ "description": "LuaFileSystem is a Lua library developed to complement the set of functions related to file systems offered by the standard Lua distribution.",
+ "homepage": "https://github.com/keplerproject/luafilesystem",
+ "supports": "!uwp",
+ "dependencies": [
+ "lua",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}