aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2017-06-07 20:20:22 -0700
committerGitHub <noreply@github.com>2017-06-07 20:20:22 -0700
commite5dc8ab8cee95e164af5bccf1a9d0b6f226b79bd (patch)
tree90d487aca805f7008eb1e494f4440f11880cb98e
parent8c6a74808814d009ab704a2a34e890ab3bc621ec (diff)
parent938a5b44bae1b8ff77d8c26d93a0e4f9e15fddba (diff)
downloadvcpkg-e5dc8ab8cee95e164af5bccf1a9d0b6f226b79bd.tar.gz
vcpkg-e5dc8ab8cee95e164af5bccf1a9d0b6f226b79bd.zip
Merge pull request #1229 from TheCycoONE/luafilesystem
Add package for luafilesystem
-rw-r--r--ports/luafilesystem/CMakeLists.txt21
-rw-r--r--ports/luafilesystem/CONTROL4
-rw-r--r--ports/luafilesystem/lfs-def-fix.patch21
-rw-r--r--ports/luafilesystem/portfile.cmake35
4 files changed, 81 insertions, 0 deletions
diff --git a/ports/luafilesystem/CMakeLists.txt b/ports/luafilesystem/CMakeLists.txt
new file mode 100644
index 000000000..85fb5eb86
--- /dev/null
+++ b/ports/luafilesystem/CMakeLists.txt
@@ -0,0 +1,21 @@
+cmake_minimum_required(VERSION 3.0)
+project(luafilesystem)
+
+if(NOT WIN32)
+ message(FATAL_ERROR "Written for windows only")
+endif()
+
+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})
+
+install(TARGETS lfs
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib)
diff --git a/ports/luafilesystem/CONTROL b/ports/luafilesystem/CONTROL
new file mode 100644
index 000000000..f101b7cb3
--- /dev/null
+++ b/ports/luafilesystem/CONTROL
@@ -0,0 +1,4 @@
+Source: luafilesystem
+Version: 1.6.3
+Description: LuaFileSystem is a Lua library developed to complement the set of functions related to file systems offered by the standard Lua distribution.
+Build-Depends: lua
diff --git a/ports/luafilesystem/lfs-def-fix.patch b/ports/luafilesystem/lfs-def-fix.patch
new file mode 100644
index 000000000..62cea763e
--- /dev/null
+++ b/ports/luafilesystem/lfs-def-fix.patch
@@ -0,0 +1,21 @@
+From 644c9c32ca9053ced3d37ff76fc1fbc0389ddf53 Mon Sep 17 00:00:00 2001
+From: Alex <null@null.null>
+Date: Mon, 16 Feb 2015 08:15:41 +0300
+Subject: [PATCH] DEF file fixes (DESCRIPTION is deprecated; VERSION must
+ contain one or two numers)
+
+---
+ src/lfs.def | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/lfs.def b/src/lfs.def
+index 7aa7a35..8a36d41 100644
+--- a/src/lfs.def
++++ b/src/lfs.def
+@@ -1,5 +1,4 @@
+ LIBRARY lfs.dll
+-DESCRIPTION "LuaFileSystem"
+-VERSION 1.5.0
++VERSION 1.6
+ EXPORTS
+ luaopen_lfs
diff --git a/ports/luafilesystem/portfile.cmake b/ports/luafilesystem/portfile.cmake
new file mode 100644
index 000000000..e55d56881
--- /dev/null
+++ b/ports/luafilesystem/portfile.cmake
@@ -0,0 +1,35 @@
+include(vcpkg_common_functions)
+
+set(LUAFILESYSTEM_VERSION 1.6.3)
+set(LUAFILESYSTEM_REVISION v_1_6_3)
+set(LUAFILESYSTEM_HASH abfa1b3ac22ed80189560a1a025a7ea21a954defe14e5b539e08f266d180962a691262efc7eb2ddacc2d4aae14d6e356b1a276165b5bed46a13e4d6c61ab99f1)
+
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/luafilesystem-${LUAFILESYSTEM_VERSION})
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO keplerproject/luafilesystem
+ REF ${LUAFILESYSTEM_REVISION}
+ SHA512 ${LUAFILESYSTEM_HASH}
+ HEAD_REF master)
+
+vcpkg_apply_patches(
+ SOURCE_PATH ${SOURCE_PATH}
+ PATCHES
+ ${CMAKE_CURRENT_LIST_DIR}/lfs-def-fix.patch)
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS)
+
+vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+
+# Handle copyright
+file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/luafilesystem)
+file(RENAME ${CURRENT_PACKAGES_DIR}/share/luafilesystem/LICENSE ${CURRENT_PACKAGES_DIR}/share/luafilesystem/copyright)
+
+# Allow empty include directory
+set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled)