aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Kahn <jacobkahn1@gmail.com>2021-01-16 21:42:15 -0600
committerGitHub <noreply@github.com>2021-01-16 19:42:15 -0800
commit58bf44e8b0cc12b3c60b007c022b610670f9ac5a (patch)
treefa54ab8410f3e38646c0de642663f292af66e7d8
parent8296ef265d2c40df2c0648d9e6180a7fb3584da0 (diff)
downloadvcpkg-58bf44e8b0cc12b3c60b007c022b610670f9ac5a.tar.gz
vcpkg-58bf44e8b0cc12b3c60b007c022b610670f9ac5a.zip
[flashlight-cpu] New port (#15514)
* [flashlight-cpu] New port * Update ports/flashlight-cpu/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Update ports/flashlight-cpu/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Update ports/flashlight-cpu/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Update commits and port versions, comments * Update ports/flashlight-cpu/portfile.cmake Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Tweaks to feature options for CUDA port * Update ports/flashlight-cuda/portfile.cmake * Update ports/flashlight-cuda/vcpkg.json * one more commit bump * Update port_versions * Add flashlight-cpu.json in port_versions Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Co-authored-by: NancyLi1013 <lirui09@beyondsoft.com>
-rw-r--r--port_versions/baseline.json6
-rw-r--r--port_versions/f-/flashlight-cpu.json9
-rw-r--r--port_versions/f-/flashlight-cuda.json5
-rw-r--r--ports/flashlight-cpu/portfile.cmake71
-rw-r--r--ports/flashlight-cpu/vcpkg.json81
-rw-r--r--ports/flashlight-cuda/portfile.cmake18
-rw-r--r--ports/flashlight-cuda/vcpkg.json2
7 files changed, 185 insertions, 7 deletions
diff --git a/port_versions/baseline.json b/port_versions/baseline.json
index 2faec6881..49289eaac 100644
--- a/port_versions/baseline.json
+++ b/port_versions/baseline.json
@@ -1904,8 +1904,12 @@
"baseline": "2019-04-07",
"port-version": 1
},
+ "flashlight-cpu": {
+ "baseline": "20210111",
+ "port-version": 0
+ },
"flashlight-cuda": {
- "baseline": "20201201",
+ "baseline": "20210111",
"port-version": 0
},
"flatbuffers": {
diff --git a/port_versions/f-/flashlight-cpu.json b/port_versions/f-/flashlight-cpu.json
new file mode 100644
index 000000000..bc688ab57
--- /dev/null
+++ b/port_versions/f-/flashlight-cpu.json
@@ -0,0 +1,9 @@
+{
+ "versions": [
+ {
+ "git-tree": "d4a7e9f779d4cce7cc5fe65b83411fca53306f62",
+ "version-string": "20210111",
+ "port-version": 0
+ }
+ ]
+}
diff --git a/port_versions/f-/flashlight-cuda.json b/port_versions/f-/flashlight-cuda.json
index 987e28af3..71400ff3c 100644
--- a/port_versions/f-/flashlight-cuda.json
+++ b/port_versions/f-/flashlight-cuda.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "b4308769591bc2d877cb5a2e829e7dfd64086c54",
+ "version-string": "20210111",
+ "port-version": 0
+ },
+ {
"git-tree": "2f4a40c0f613e3c43752f0a818667dcc4b932d28",
"version-string": "20201201",
"port-version": 0
diff --git a/ports/flashlight-cpu/portfile.cmake b/ports/flashlight-cpu/portfile.cmake
new file mode 100644
index 000000000..221a0ef7d
--- /dev/null
+++ b/ports/flashlight-cpu/portfile.cmake
@@ -0,0 +1,71 @@
+if (EXISTS "${CURRENT_INSTALLED_DIR}/share/flashlight-cuda")
+ message(FATAL_ERROR "flashlight-cuda is installed; only one Flashlight "
+ "backend package can be installed at once. Uninstall and try again:"
+ "\n vcpkg remove flashlight-cuda\n")
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO facebookresearch/flashlight
+ REF 81c4d8d5ea57e9ceaa6db3b17f0861491fd31383
+ SHA512 988da269be81f7b4897d72e52683259f4223029b5012150958b9b21c7103fe49a2458ffa5623ed53c125a98f7294541af46cd68b17e9213269e5a2aecfaabb67
+ HEAD_REF master
+)
+
+# Default flags
+set(FL_DEFAULT_VCPKG_CMAKE_FLAGS
+ -DFL_BUILD_TESTS=OFF
+ -DFL_BUILD_EXAMPLES=OFF
+ -DFL_BACKEND=CPU # this port is CPU-backend only
+ -DFL_BUILD_STANDALONE=OFF
+ -DFL_INSTALL_CMAKE_DIR=${CURRENT_PACKAGES_DIR}/share/${PORT} # for CMake configs/targets
+)
+
+# Determine which components to build via specified feature
+vcpkg_check_features(
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ lib FL_BUILD_LIBRARIES
+ fl FL_BUILD_CORE
+ asr FL_BUILD_APP_ASR
+ imgclass FL_BUILD_APP_IMGCLASS
+ lm FL_BUILD_APP_LM
+)
+
+# Build and install
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS
+ ${FL_DEFAULT_VCPKG_CMAKE_FLAGS}
+ ${FEATURE_OPTIONS}
+)
+vcpkg_install_cmake()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
+
+# Binaries/tools
+set(FLASHLIGHT_TOOLS "")
+if ("imgclass" IN_LIST FEATURES)
+ list(APPEND FLASHLIGHT_TOOLS fl_img_imagenet_resnet34)
+endif()
+if ("asr" IN_LIST FEATURES)
+ list(APPEND FLASHLIGHT_TOOLS
+ fl_asr_train
+ fl_asr_test
+ fl_asr_decode
+ fl_asr_align
+ fl_asr_voice_activity_detection_ctc
+ )
+endif()
+if ("lm" IN_LIST FEATURES)
+ list(APPEND FLASHLIGHT_TOOLS fl_lm_train fl_lm_dictionary_builder)
+endif()
+list(LENGTH FLASHLIGHT_TOOLS NUM_TOOLS)
+if (NUM_TOOLS GREATER 0)
+ vcpkg_copy_tools(TOOL_NAMES ${FLASHLIGHT_TOOLS} AUTO_CLEAN)
+endif()
+
+# Copyright
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/flashlight-cpu/vcpkg.json b/ports/flashlight-cpu/vcpkg.json
new file mode 100644
index 000000000..fcce9f0a5
--- /dev/null
+++ b/ports/flashlight-cpu/vcpkg.json
@@ -0,0 +1,81 @@
+{
+ "name": "flashlight-cpu",
+ "version-string": "20210111",
+ "description": "A C++ standalone library for machine learning. CPU backend.",
+ "homepage": "https://github.com/facebookresearch/flashlight",
+ "supports": "!(windows | osx)",
+ "default-features": [
+ "fl"
+ ],
+ "features": {
+ "asr": {
+ "description": "flashlight asr app",
+ "dependencies": [
+ {
+ "name": "flashlight-cpu",
+ "features": [
+ "fl",
+ "lib"
+ ]
+ },
+ "gflags",
+ "libsndfile"
+ ]
+ },
+ "fl": {
+ "description": "flashlight core autograd and neural net library",
+ "dependencies": [
+ {
+ "name": "arrayfire",
+ "features": [
+ "cpu"
+ ]
+ },
+ "cereal",
+ {
+ "name": "gloo",
+ "features": [
+ "mpi"
+ ]
+ },
+ "onednn",
+ "openmpi",
+ "stb"
+ ]
+ },
+ "imgclass": {
+ "description": "flashlight image classification app",
+ "dependencies": [
+ {
+ "name": "flashlight-cpu",
+ "features": [
+ "fl",
+ "lib"
+ ]
+ },
+ "gflags"
+ ]
+ },
+ "lib": {
+ "description": "flashlight libraries",
+ "dependencies": [
+ "fftw3",
+ "intel-mkl",
+ "kenlm"
+ ]
+ },
+ "lm": {
+ "description": "flashlight lm app",
+ "dependencies": [
+ {
+ "name": "flashlight-cpu",
+ "features": [
+ "fl",
+ "lib"
+ ]
+ },
+ "gflags"
+ ]
+ }
+ }
+}
diff --git a/ports/flashlight-cuda/portfile.cmake b/ports/flashlight-cuda/portfile.cmake
index 190439430..b21f393da 100644
--- a/ports/flashlight-cuda/portfile.cmake
+++ b/ports/flashlight-cuda/portfile.cmake
@@ -1,8 +1,14 @@
+if (EXISTS "${CURRENT_INSTALLED_DIR}/share/flashlight-cpu")
+ message(FATAL_ERROR "flashlight-cpu is installed; only one Flashlight "
+ "backend package can be installed at once. Uninstall and try again:"
+ "\n vcpkg remove flashlight-cpu\n")
+endif()
+
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO facebookresearch/flashlight
- REF 0948e97dbff23d474500a5f55bcf59d3b3589cf4
- SHA512 89c2efdebc6688a38f9fc3ebb8442c8fe2ad3d51c0e60c5dd8e7ca283715e07f48083543f09eed0db9929d86b765a898d9b3960a9b6f9844b20260f94cf71fdf
+ REF 81c4d8d5ea57e9ceaa6db3b17f0861491fd31383
+ SHA512 988da269be81f7b4897d72e52683259f4223029b5012150958b9b21c7103fe49a2458ffa5623ed53c125a98f7294541af46cd68b17e9213269e5a2aecfaabb67
HEAD_REF master
)
@@ -18,8 +24,8 @@ set(FL_DEFAULT_VCPKG_CMAKE_FLAGS
# Determine which components to build via specified feature
vcpkg_check_features(
- OUT_FEATURE_OPTIONS FL_FEATURE_OPTIONS
- FEATURES
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
lib FL_BUILD_LIBRARIES
fl FL_BUILD_CORE
asr FL_BUILD_APP_ASR
@@ -31,7 +37,9 @@ vcpkg_check_features(
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
- OPTIONS ${FL_DEFAULT_VCPKG_CMAKE_FLAGS} ${FL_FEATURE_OPTIONS}
+ OPTIONS
+ ${FL_DEFAULT_VCPKG_CMAKE_FLAGS}
+ ${FEATURE_OPTIONS}
)
vcpkg_install_cmake()
diff --git a/ports/flashlight-cuda/vcpkg.json b/ports/flashlight-cuda/vcpkg.json
index b4e10e3c4..ca24ddc72 100644
--- a/ports/flashlight-cuda/vcpkg.json
+++ b/ports/flashlight-cuda/vcpkg.json
@@ -1,6 +1,6 @@
{
"name": "flashlight-cuda",
- "version-string": "20201201",
+ "version-string": "20210111",
"description": "A C++ standalone library for machine learning. CUDA backend.",
"homepage": "https://github.com/facebookresearch/flashlight",
"supports": "!(windows | osx)",