package/dlib: new package

Signed-off-by: Roy Kollen Svendsen <roykollensvendsen@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Roy Kollen Svendsen
2024-09-15 06:54:53 +02:00
committed by Thomas Petazzoni
parent 21e9bb0967
commit 3cb185d3df
5 changed files with 128 additions and 0 deletions

View File

@@ -2888,6 +2888,7 @@ F: support/testing/tests/package/test_python_mako.py
F: toolchain/
N: Roy Kollen Svendsen <roykollensvendsen@gmail.com>
F: package/dlib/
F: package/qt6/
N: Rufus Segar <rhs@riseup.net>

View File

@@ -2155,6 +2155,7 @@ menu "Other"
source "package/cracklib/Config.in"
source "package/dawgdic/Config.in"
source "package/ding-libs/Config.in"
source "package/dlib/Config.in"
source "package/dotconf/Config.in"
source "package/double-conversion/Config.in"
source "package/eigen/Config.in"

14
package/dlib/Config.in Normal file
View File

@@ -0,0 +1,14 @@
config BR2_PACKAGE_DLIB
bool "dlib"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
help
Dlib is a modern C++ toolkit containing machine learning
algorithms and tools for creating complex software in C++ to
solve real world problems.
http://dlib.net
comment "dlib needs a toolchain w/ C++, threads"
depends on !BR2_INSTALL_LIBSTDCPP || \
!BR2_TOOLCHAIN_HAS_THREADS

13
package/dlib/dlib.hash Normal file
View File

@@ -0,0 +1,13 @@
# Locally computed
sha256 22513c353ec9c153300c394050c96ca9d088e02966ac0f639e989e50318c82d6 dlib-19.24.6.tar.gz
# Hashes for license files
sha256 50c1c5978d490c7f13062d91c4b89affc83774f87bc4568a714f748b62a5b216 dlib/external/libjpeg/README
sha256 debfae299fa4118b0a586af4cf7ac8d38aae81ac4e9995c935862aaee6eb0362 dlib/external/libpng/LICENSE
sha256 83965b843b98f670d3a85bd041ed4b372c8ec50d7b4a5995a83ac697ba675dcb dlib/external/pybind11/LICENSE
sha256 8d8291caf1cee26d23acf3eb67c9f9a2d58f1c681b16a4fbe8cbfb9e3c0b5a9b dlib/LICENSE.txt
sha256 908b0b565ae9bf61b7b41447cb0b83564f320375723bcc884ec30e5537a0d5dc dlib/test/ffmpeg_data/LICENSE.TXT
sha256 78515536a4b0d896745b6483fccc561987e8e2f2d014dc81d7c2e97c497a0a69 examples/LICENSE_FOR_EXAMPLE_PROGRAMS.txt
sha256 a0e7b40719ba74630debe9fae1cb847ee436215451123254a690171d09fb036e examples/video_frames/license.txt
sha256 8d8291caf1cee26d23acf3eb67c9f9a2d58f1c681b16a4fbe8cbfb9e3c0b5a9b LICENSE.txt
sha256 8acb12b218fdb5e071f25eda9ac990d04888388b65095867d9007c278a9f993b python_examples/LICENSE_FOR_EXAMPLE_PROGRAMS.txt

99
package/dlib/dlib.mk Normal file
View File

@@ -0,0 +1,99 @@
################################################################################
#
# dlib
#
################################################################################
DLIB_VERSION = 19.24.6
DLIB_SITE = $(call github,davisking,dlib,v$(DLIB_VERSION))
DLIB_CMAKE_BACKEND = ninja
DLIB_INSTALL_STAGING = YES
DLIB_SUPPORTS_IN_SOURCE_BUILD = NO
DLIB_LICENSE = \
BSD-3-Clause (kissfft, pybind11) \
BSL-1.0 (dlib, tools) \
CC0-1.0 (examples) \
libpng-2.0 (libpng) \
MIT or CC0-1.0 (JoinPaths.cmake)
DLIB_LICENSE_FILES = \
dlib/external/libjpeg/README \
dlib/external/libpng/LICENSE \
dlib/external/pybind11/LICENSE \
dlib/LICENSE.txt \
dlib/test/ffmpeg_data/LICENSE.TXT \
examples/LICENSE_FOR_EXAMPLE_PROGRAMS.txt \
examples/video_frames/license.txt \
LICENSE.txt \
python_examples/LICENSE_FOR_EXAMPLE_PROGRAMS.txt
DLIB_CONF_OPTS = \
-DDLIB_LINK_WITH_SQLITE3=OFF \
-DDLIB_USE_CUDA=OFF \
-DDLIB_USE_MKL_FFT=OFF
ifeq ($(BR2_PACKAGE_FFMPEG)$(BR2_PACKAGE_FFMPEG_SWSCALE),yy)
DLIB_CONF_OPTS += -DDLIB_USE_FFMPEG=ON
DLIB_DEPENDENCIES += ffmpeg
else
DLIB_CONF_OPTS += -DDLIB_USE_FFMPEG=OFF
endif
ifeq ($(BR2_PACKAGE_GIFLIB),y)
DLIB_CONF_OPTS += -DDLIB_GIF_SUPPORT=ON
DLIB_DEPENDENCIES += giflib
else
DLIB_CONF_OPTS += -DDLIB_GIF_SUPPORT=OFF
endif
ifeq ($(BR2_PACKAGE_JPEG),y)
DLIB_CONF_OPTS += -DDLIB_JPEG_SUPPORT=ON
DLIB_DEPENDENCIES += jpeg
else
DLIB_CONF_OPTS += -DDLIB_JPEG_SUPPORT=OFF
endif
ifeq ($(BR2_PACKAGE_LAPACK),y)
DLIB_CONF_OPTS += -DDLIB_USE_LAPACK=ON
DLIB_DEPENDENCIES += lapack
else
DLIB_CONF_OPTS += -DDLIB_USE_LAPACK=OFF
endif
ifeq ($(BR2_PACKAGE_LIBJXL),y)
DLIB_CONF_OPTS += -DDLIB_JXL_SUPPORT=ON
DLIB_DEPENDENCIES += libjxl
else
DLIB_CONF_OPTS += -DDLIB_JXL_SUPPORT=OFF
endif
ifeq ($(BR2_PACKAGE_LIBPNG),y)
DLIB_CONF_OPTS += -DDLIB_PNG_SUPPORT=ON
DLIB_DEPENDENCIES += libpng
else
DLIB_CONF_OPTS += -DDLIB_PNG_SUPPORT=OFF
endif
ifeq ($(BR2_PACKAGE_OPENBLAS),y)
DLIB_CONF_OPTS += -DDLIB_USE_BLAS=ON
DLIB_DEPENDENCIES += openblas
else
DLIB_CONF_OPTS += -DDLIB_USE_BLAS=OFF
endif
ifeq ($(BR2_PACKAGE_WEBP),y)
DLIB_CONF_OPTS += -DDLIB_WEBP_SUPPORT=ON
DLIB_DEPENDENCIES += webp
else
DLIB_CONF_OPTS += -DDLIB_WEBP_SUPPORT=OFF
endif
ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
DLIB_CONF_OPTS += -DDLIB_NO_GUI_SUPPORT=OFF
DLIB_DEPENDENCIES += xlib_libX11
else
DLIB_CONF_OPTS += -DDLIB_NO_GUI_SUPPORT=ON
endif
$(eval $(cmake-package))