diff options
| author | Jacob Kahn <jacobkahn1@gmail.com> | 2021-01-16 21:42:15 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-16 19:42:15 -0800 |
| commit | 58bf44e8b0cc12b3c60b007c022b610670f9ac5a (patch) | |
| tree | fa54ab8410f3e38646c0de642663f292af66e7d8 | |
| parent | 8296ef265d2c40df2c0648d9e6180a7fb3584da0 (diff) | |
| download | vcpkg-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.json | 6 | ||||
| -rw-r--r-- | port_versions/f-/flashlight-cpu.json | 9 | ||||
| -rw-r--r-- | port_versions/f-/flashlight-cuda.json | 5 | ||||
| -rw-r--r-- | ports/flashlight-cpu/portfile.cmake | 71 | ||||
| -rw-r--r-- | ports/flashlight-cpu/vcpkg.json | 81 | ||||
| -rw-r--r-- | ports/flashlight-cuda/portfile.cmake | 18 | ||||
| -rw-r--r-- | ports/flashlight-cuda/vcpkg.json | 2 |
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)", |
