Spaces:
Sleeping
Sleeping
adc82f048a0b173873948752bff13a422361919a05a31d0b94d3f95be3fbd92b
Browse files- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/FindLAPACK.cmake +559 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/portfile.cmake +142 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/vcpkg-cmake-wrapper.cmake +11 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/vcpkg.json +48 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lastools/fix_install_paths_lastools.patch +27 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lastools/portfile.cmake +33 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lastools/vcpkg.json +8 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/laszip/portfile.cmake +25 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/laszip/vcpkg.json +17 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/launch-darkly-server/portfile.cmake +33 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/launch-darkly-server/vcpkg.json +19 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lazy-importer/portfile.cmake +14 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lazy-importer/vcpkg.json +6 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/fix-build-error.patch +32 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/glib.link.patch +30 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/only-install-one-flavor.patch +19 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/portfile.cmake +58 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/vcpkg.json +13 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/CMakeLists.txt +54 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/portfile.cmake +33 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/remove_library_directive.patch +8 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/shared.patch +10 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/usage +4 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/vcpkg.json +17 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leaf/portfile.cmake +1 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leaf/vcpkg.json +9 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lemon/portfile.cmake +3 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lemon/vcpkg.json +9 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leptonica/fix-CMakeDependency.patch +64 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leptonica/portfile.cmake +32 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leptonica/vcpkg.json +24 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/create_package.patch +26 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/enable_static_build.patch +16 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/install_lib_to_archive_path.patch +16 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/portfile.cmake +24 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/vcpkg.json +7 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lest/portfile.cmake +9 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/lest/vcpkg.json +7 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/fix-dependencies.patch +34 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/fix_config.patch +26 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/leveldbConfig.cmake.in +14 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/portfile.cmake +38 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/vcpkg.json +33 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/levmar/add-install.patch +11 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/levmar/portfile.cmake +29 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/levmar/vcpkg.json +8 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaaplus/fix-cmakelists.patch +85 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaaplus/portfile.cmake +37 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaaplus/vcpkg.json +21 -0
- third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaiff/allow_utf_16_filename.patch +214 -0
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/FindLAPACK.cmake
ADDED
@@ -0,0 +1,559 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
2 |
+
# file Copyright.txt or https://cmake.org/licensing for details.
|
3 |
+
|
4 |
+
#[=======================================================================[.rst:
|
5 |
+
FindLAPACK
|
6 |
+
----------
|
7 |
+
|
8 |
+
Find Linear Algebra PACKage (LAPACK) library
|
9 |
+
|
10 |
+
This module finds an installed Fortran library that implements the
|
11 |
+
LAPACK linear-algebra interface (see http://www.netlib.org/lapack/).
|
12 |
+
|
13 |
+
The approach follows that taken for the ``autoconf`` macro file,
|
14 |
+
``acx_lapack.m4`` (distributed at
|
15 |
+
http://ac-archive.sourceforge.net/ac-archive/acx_lapack.html).
|
16 |
+
|
17 |
+
Input Variables
|
18 |
+
^^^^^^^^^^^^^^^
|
19 |
+
|
20 |
+
The following variables may be set to influence this module's behavior:
|
21 |
+
|
22 |
+
``BLA_STATIC``
|
23 |
+
if ``ON`` use static linkage
|
24 |
+
|
25 |
+
``BLA_VENDOR``
|
26 |
+
If set, checks only the specified vendor, if not set checks all the
|
27 |
+
possibilities. List of vendors valid in this module:
|
28 |
+
|
29 |
+
* ``OpenBLAS``
|
30 |
+
* ``FLAME``
|
31 |
+
* ``Intel10_32`` (intel mkl v10 32 bit)
|
32 |
+
* ``Intel10_64lp`` (intel mkl v10+ 64 bit, threaded code, lp64 model)
|
33 |
+
* ``Intel10_64lp_seq`` (intel mkl v10+ 64 bit, sequential code, lp64 model)
|
34 |
+
* ``Intel10_64ilp`` (intel mkl v10+ 64 bit, threaded code, ilp64 model)
|
35 |
+
* ``Intel10_64ilp_seq`` (intel mkl v10+ 64 bit, sequential code, ilp64 model)
|
36 |
+
* ``Intel10_64_dyn`` (intel mkl v10+ 64 bit, single dynamic library)
|
37 |
+
* ``Intel`` (obsolete versions of mkl 32 and 64 bit)
|
38 |
+
* ``ACML``
|
39 |
+
* ``Apple``
|
40 |
+
* ``NAS``
|
41 |
+
* ``Arm``
|
42 |
+
* ``Arm_mp``
|
43 |
+
* ``Arm_ilp64``
|
44 |
+
* ``Arm_ilp64_mp``
|
45 |
+
* ``Generic``
|
46 |
+
|
47 |
+
``BLA_F95``
|
48 |
+
if ``ON`` tries to find the BLAS95/LAPACK95 interfaces
|
49 |
+
|
50 |
+
Imported targets
|
51 |
+
^^^^^^^^^^^^^^^^
|
52 |
+
|
53 |
+
This module defines the following :prop_tgt:`IMPORTED` target:
|
54 |
+
|
55 |
+
``LAPACK::LAPACK``
|
56 |
+
The libraries to use for LAPACK, if found.
|
57 |
+
|
58 |
+
Result Variables
|
59 |
+
^^^^^^^^^^^^^^^^
|
60 |
+
|
61 |
+
This module defines the following variables:
|
62 |
+
|
63 |
+
``LAPACK_FOUND``
|
64 |
+
library implementing the LAPACK interface is found
|
65 |
+
``LAPACK_LINKER_FLAGS``
|
66 |
+
uncached list of required linker flags (excluding ``-l`` and ``-L``).
|
67 |
+
``LAPACK_LIBRARIES``
|
68 |
+
uncached list of libraries (using full path name) to link against
|
69 |
+
to use LAPACK
|
70 |
+
``LAPACK95_LIBRARIES``
|
71 |
+
uncached list of libraries (using full path name) to link against
|
72 |
+
to use LAPACK95
|
73 |
+
``LAPACK95_FOUND``
|
74 |
+
library implementing the LAPACK95 interface is found
|
75 |
+
|
76 |
+
.. note::
|
77 |
+
|
78 |
+
C, CXX or Fortran must be enabled to detect a BLAS/LAPACK library.
|
79 |
+
C or CXX must be enabled to use Intel Math Kernel Library (MKL).
|
80 |
+
|
81 |
+
For example, to use Intel MKL libraries and/or Intel compiler:
|
82 |
+
|
83 |
+
.. code-block:: cmake
|
84 |
+
|
85 |
+
set(BLA_VENDOR Intel10_64lp)
|
86 |
+
find_package(LAPACK)
|
87 |
+
#]=======================================================================]
|
88 |
+
|
89 |
+
enable_language(C)
|
90 |
+
# Check the language being used
|
91 |
+
if(NOT (CMAKE_C_COMPILER_LOADED OR CMAKE_CXX_COMPILER_LOADED OR CMAKE_Fortran_COMPILER_LOADED))
|
92 |
+
if(LAPACK_FIND_REQUIRED)
|
93 |
+
message(FATAL_ERROR "FindLAPACK requires Fortran, C, or C++ to be enabled.")
|
94 |
+
else()
|
95 |
+
message(STATUS "Looking for LAPACK... - NOT found (Unsupported languages)")
|
96 |
+
return()
|
97 |
+
endif()
|
98 |
+
endif()
|
99 |
+
|
100 |
+
if(CMAKE_Fortran_COMPILER_LOADED)
|
101 |
+
include(${CMAKE_ROOT}/Modules/CheckFortranFunctionExists.cmake)
|
102 |
+
else()
|
103 |
+
include(${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
|
104 |
+
endif()
|
105 |
+
include(${CMAKE_ROOT}/Modules/CMakePushCheckState.cmake)
|
106 |
+
|
107 |
+
cmake_push_check_state()
|
108 |
+
set(CMAKE_REQUIRED_QUIET ${LAPACK_FIND_QUIETLY})
|
109 |
+
|
110 |
+
set(LAPACK_FOUND FALSE)
|
111 |
+
set(LAPACK95_FOUND FALSE)
|
112 |
+
|
113 |
+
# store original values for CMAKE_FIND_LIBRARY_SUFFIXES
|
114 |
+
set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
115 |
+
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
116 |
+
list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.3gfs .so.3 .so.4 .so.5)
|
117 |
+
endif()
|
118 |
+
|
119 |
+
# TODO: move this stuff to a separate module
|
120 |
+
|
121 |
+
macro(CHECK_LAPACK_LIBRARIES LIBRARIES _prefix _name _flags _list _threadlibs _addlibdir _subdirs _blas)
|
122 |
+
# This macro checks for the existence of the combination of fortran libraries
|
123 |
+
# given by _list. If the combination is found, this macro checks (using the
|
124 |
+
# Check_Fortran_Function_Exists macro) whether can link against that library
|
125 |
+
# combination using the name of a routine given by _name using the linker
|
126 |
+
# flags given by _flags. If the combination of libraries is found and passes
|
127 |
+
# the link test, LIBRARIES is set to the list of complete library paths that
|
128 |
+
# have been found. Otherwise, LIBRARIES is set to FALSE.
|
129 |
+
|
130 |
+
# N.B. _prefix is the prefix applied to the names of all cached variables that
|
131 |
+
# are generated internally and marked advanced by this macro.
|
132 |
+
# _addlibdir is a list of additional search paths. _subdirs is a list of path
|
133 |
+
# suffixes to be used by find_library().
|
134 |
+
|
135 |
+
set(_libraries_work TRUE)
|
136 |
+
set(${LIBRARIES})
|
137 |
+
set(_combined_name)
|
138 |
+
|
139 |
+
set(_extaddlibdir "${_addlibdir}")
|
140 |
+
if(WIN32)
|
141 |
+
list(APPEND _extaddlibdir ENV LIB)
|
142 |
+
elseif(APPLE)
|
143 |
+
list(APPEND _extaddlibdir ENV DYLD_LIBRARY_PATH)
|
144 |
+
else()
|
145 |
+
list(APPEND _extaddlibdir ENV LD_LIBRARY_PATH)
|
146 |
+
endif()
|
147 |
+
list(APPEND _extaddlibdir "${CMAKE_C_IMPLICIT_LINK_DIRECTORIES}")
|
148 |
+
|
149 |
+
foreach(_library ${_list})
|
150 |
+
if(_library MATCHES "^-Wl,--(start|end)-group$")
|
151 |
+
# Respect linker flags like --start/end-group (required by MKL)
|
152 |
+
set(${LIBRARIES} ${${LIBRARIES}} "${_library}")
|
153 |
+
else()
|
154 |
+
set(_combined_name ${_combined_name}_${_library})
|
155 |
+
if(_libraries_work)
|
156 |
+
find_library(${_prefix}_${_library}_LIBRARY
|
157 |
+
NAMES ${_library}
|
158 |
+
PATHS ${_extaddlibdir}
|
159 |
+
PATH_SUFFIXES ${_subdirs}
|
160 |
+
)
|
161 |
+
#message("DEBUG: find_library(${_library}) got ${${_prefix}_${_library}_LIBRARY}")
|
162 |
+
mark_as_advanced(${_prefix}_${_library}_LIBRARY)
|
163 |
+
set(${LIBRARIES} ${${LIBRARIES}} ${${_prefix}_${_library}_LIBRARY})
|
164 |
+
set(_libraries_work ${${_prefix}_${_library}_LIBRARY})
|
165 |
+
endif()
|
166 |
+
endif()
|
167 |
+
endforeach()
|
168 |
+
|
169 |
+
if(_libraries_work)
|
170 |
+
# Test this combination of libraries.
|
171 |
+
set(CMAKE_REQUIRED_LIBRARIES ${_flags} ${${LIBRARIES}} ${_blas} ${_threadlibs})
|
172 |
+
#message("DEBUG: CMAKE_REQUIRED_LIBRARIES = ${CMAKE_REQUIRED_LIBRARIES}")
|
173 |
+
if(CMAKE_Fortran_COMPILER_LOADED)
|
174 |
+
check_fortran_function_exists("${_name}" ${_prefix}${_combined_name}_WORKS)
|
175 |
+
else()
|
176 |
+
check_function_exists("${_name}_" ${_prefix}${_combined_name}_WORKS)
|
177 |
+
endif()
|
178 |
+
set(CMAKE_REQUIRED_LIBRARIES)
|
179 |
+
set(_libraries_work ${${_prefix}${_combined_name}_WORKS})
|
180 |
+
endif()
|
181 |
+
|
182 |
+
if(_libraries_work)
|
183 |
+
if("${_list}${_blas}" STREQUAL "")
|
184 |
+
set(${LIBRARIES} "${LIBRARIES}-PLACEHOLDER-FOR-EMPTY-LIBRARIES")
|
185 |
+
else()
|
186 |
+
set(${LIBRARIES} ${${LIBRARIES}} ${_blas} ${_threadlibs})
|
187 |
+
endif()
|
188 |
+
else()
|
189 |
+
set(${LIBRARIES} FALSE)
|
190 |
+
endif()
|
191 |
+
#message("DEBUG: ${LIBRARIES} = ${${LIBRARIES}}")
|
192 |
+
endmacro()
|
193 |
+
|
194 |
+
set(LAPACK_LINKER_FLAGS)
|
195 |
+
set(LAPACK_LIBRARIES)
|
196 |
+
set(LAPACK95_LIBRARIES)
|
197 |
+
|
198 |
+
include(CMakeFindDependencyMacro)
|
199 |
+
find_dependency(BLAS)
|
200 |
+
|
201 |
+
if(BLAS_FOUND)
|
202 |
+
set(LAPACK_LINKER_FLAGS ${BLAS_LINKER_FLAGS})
|
203 |
+
if(NOT $ENV{BLA_VENDOR} STREQUAL "")
|
204 |
+
set(BLA_VENDOR $ENV{BLA_VENDOR})
|
205 |
+
else()
|
206 |
+
if(NOT BLA_VENDOR)
|
207 |
+
set(BLA_VENDOR "All")
|
208 |
+
endif()
|
209 |
+
endif()
|
210 |
+
|
211 |
+
# LAPACK in the Intel MKL 10+ library?
|
212 |
+
if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All")
|
213 |
+
if(NOT LAPACK_LIBRARIES)
|
214 |
+
if(CMAKE_C_COMPILER_LOADED OR CMAKE_CXX_COMPILER_LOADED)
|
215 |
+
# System-specific settings
|
216 |
+
if(NOT WIN32)
|
217 |
+
set(LAPACK_mkl_LM "-lm")
|
218 |
+
set(LAPACK_mkl_LDL "-ldl")
|
219 |
+
endif()
|
220 |
+
|
221 |
+
if(LAPACK_FIND_QUIETLY OR NOT LAPACK_FIND_REQUIRED)
|
222 |
+
find_package(Threads)
|
223 |
+
else()
|
224 |
+
find_package(Threads REQUIRED)
|
225 |
+
endif()
|
226 |
+
|
227 |
+
if(BLA_VENDOR MATCHES "_64ilp")
|
228 |
+
set(LAPACK_mkl_ILP_MODE "ilp64")
|
229 |
+
else()
|
230 |
+
set(LAPACK_mkl_ILP_MODE "lp64")
|
231 |
+
endif()
|
232 |
+
|
233 |
+
set(LAPACK_SEARCH_LIBS "")
|
234 |
+
|
235 |
+
if(BLA_F95)
|
236 |
+
set(LAPACK_mkl_SEARCH_SYMBOL "cheev_f95")
|
237 |
+
set(_LIBRARIES LAPACK95_LIBRARIES)
|
238 |
+
set(_BLAS_LIBRARIES ${BLAS95_LIBRARIES})
|
239 |
+
|
240 |
+
# old
|
241 |
+
list(APPEND LAPACK_SEARCH_LIBS
|
242 |
+
"mkl_lapack95")
|
243 |
+
# new >= 10.3
|
244 |
+
list(APPEND LAPACK_SEARCH_LIBS
|
245 |
+
"mkl_intel_c")
|
246 |
+
list(APPEND LAPACK_SEARCH_LIBS
|
247 |
+
"mkl_lapack95_${LAPACK_mkl_ILP_MODE}")
|
248 |
+
else()
|
249 |
+
set(LAPACK_mkl_SEARCH_SYMBOL "cheev")
|
250 |
+
set(_LIBRARIES LAPACK_LIBRARIES)
|
251 |
+
set(_BLAS_LIBRARIES ${BLAS_LIBRARIES})
|
252 |
+
|
253 |
+
# old and new >= 10.3
|
254 |
+
list(APPEND LAPACK_SEARCH_LIBS
|
255 |
+
"mkl_lapack")
|
256 |
+
endif()
|
257 |
+
|
258 |
+
# MKL uses a multitude of partially platform-specific subdirectories:
|
259 |
+
if(BLA_VENDOR STREQUAL "Intel10_32")
|
260 |
+
set(LAPACK_mkl_ARCH_NAME "ia32")
|
261 |
+
else()
|
262 |
+
set(LAPACK_mkl_ARCH_NAME "intel64")
|
263 |
+
endif()
|
264 |
+
if(WIN32)
|
265 |
+
set(LAPACK_mkl_OS_NAME "win")
|
266 |
+
elseif(APPLE)
|
267 |
+
set(LAPACK_mkl_OS_NAME "mac")
|
268 |
+
else()
|
269 |
+
set(LAPACK_mkl_OS_NAME "lin")
|
270 |
+
endif()
|
271 |
+
if(DEFINED ENV{MKLROOT})
|
272 |
+
file(TO_CMAKE_PATH "$ENV{MKLROOT}" LAPACK_mkl_MKLROOT)
|
273 |
+
# If MKLROOT points to the subdirectory 'mkl', use the parent directory instead
|
274 |
+
# so we can better detect other relevant libraries in 'compiler' or 'tbb':
|
275 |
+
get_filename_component(LAPACK_mkl_MKLROOT_LAST_DIR "${LAPACK_mkl_MKLROOT}" NAME)
|
276 |
+
if(LAPACK_mkl_MKLROOT_LAST_DIR STREQUAL "mkl")
|
277 |
+
get_filename_component(LAPACK_mkl_MKLROOT "${LAPACK_mkl_MKLROOT}" DIRECTORY)
|
278 |
+
endif()
|
279 |
+
endif()
|
280 |
+
set(LAPACK_mkl_LIB_PATH_SUFFIXES
|
281 |
+
"compiler/lib" "compiler/lib/${LAPACK_mkl_ARCH_NAME}_${LAPACK_mkl_OS_NAME}"
|
282 |
+
"mkl/lib" "mkl/lib/${LAPACK_mkl_ARCH_NAME}_${LAPACK_mkl_OS_NAME}"
|
283 |
+
"lib/${LAPACK_mkl_ARCH_NAME}_${LAPACK_mkl_OS_NAME}")
|
284 |
+
|
285 |
+
# First try empty lapack libs
|
286 |
+
if(NOT ${_LIBRARIES})
|
287 |
+
check_lapack_libraries(
|
288 |
+
${_LIBRARIES}
|
289 |
+
LAPACK
|
290 |
+
${LAPACK_mkl_SEARCH_SYMBOL}
|
291 |
+
""
|
292 |
+
""
|
293 |
+
"${CMAKE_THREAD_LIBS_INIT};${LAPACK_mkl_LM};${LAPACK_mkl_LDL}"
|
294 |
+
"${LAPACK_mkl_MKLROOT}"
|
295 |
+
"${LAPACK_mkl_LIB_PATH_SUFFIXES}"
|
296 |
+
"${_BLAS_LIBRARIES}"
|
297 |
+
)
|
298 |
+
endif()
|
299 |
+
|
300 |
+
# Then try the search libs
|
301 |
+
foreach(IT ${LAPACK_SEARCH_LIBS})
|
302 |
+
string(REPLACE " " ";" SEARCH_LIBS ${IT})
|
303 |
+
if(NOT ${_LIBRARIES})
|
304 |
+
check_lapack_libraries(
|
305 |
+
${_LIBRARIES}
|
306 |
+
LAPACK
|
307 |
+
${LAPACK_mkl_SEARCH_SYMBOL}
|
308 |
+
""
|
309 |
+
"${SEARCH_LIBS}"
|
310 |
+
"${CMAKE_THREAD_LIBS_INIT};${LAPACK_mkl_LM};${LAPACK_mkl_LDL}"
|
311 |
+
"${LAPACK_mkl_MKLROOT}"
|
312 |
+
"${LAPACK_mkl_LIB_PATH_SUFFIXES}"
|
313 |
+
"${_BLAS_LIBRARIES}"
|
314 |
+
)
|
315 |
+
endif()
|
316 |
+
endforeach()
|
317 |
+
|
318 |
+
unset(LAPACK_mkl_ILP_MODE)
|
319 |
+
unset(LAPACK_mkl_SEARCH_SYMBOL)
|
320 |
+
unset(LAPACK_mkl_LM)
|
321 |
+
unset(LAPACK_mkl_LDL)
|
322 |
+
unset(LAPACK_mkl_MKLROOT)
|
323 |
+
unset(LAPACK_mkl_ARCH_NAME)
|
324 |
+
unset(LAPACK_mkl_OS_NAME)
|
325 |
+
unset(LAPACK_mkl_LIB_PATH_SUFFIXES)
|
326 |
+
endif()
|
327 |
+
endif()
|
328 |
+
endif()
|
329 |
+
|
330 |
+
# gotoblas? (http://www.tacc.utexas.edu/tacc-projects/gotoblas2)
|
331 |
+
if(BLA_VENDOR STREQUAL "Goto" OR BLA_VENDOR STREQUAL "All")
|
332 |
+
if(NOT LAPACK_LIBRARIES)
|
333 |
+
check_lapack_libraries(
|
334 |
+
LAPACK_LIBRARIES
|
335 |
+
LAPACK
|
336 |
+
cheev
|
337 |
+
""
|
338 |
+
"goto2"
|
339 |
+
""
|
340 |
+
""
|
341 |
+
""
|
342 |
+
"${BLAS_LIBRARIES}"
|
343 |
+
)
|
344 |
+
endif()
|
345 |
+
endif()
|
346 |
+
|
347 |
+
# OpenBLAS? (http://www.openblas.net)
|
348 |
+
if(BLA_VENDOR STREQUAL "OpenBLAS" OR BLA_VENDOR STREQUAL "All")
|
349 |
+
if(NOT LAPACK_LIBRARIES)
|
350 |
+
check_lapack_libraries(
|
351 |
+
LAPACK_LIBRARIES
|
352 |
+
LAPACK
|
353 |
+
cheev
|
354 |
+
""
|
355 |
+
"openblas"
|
356 |
+
""
|
357 |
+
""
|
358 |
+
""
|
359 |
+
"${BLAS_LIBRARIES}"
|
360 |
+
)
|
361 |
+
endif()
|
362 |
+
endif()
|
363 |
+
|
364 |
+
# ArmPL? (https://developer.arm.com/tools-and-software/server-and-hpc/compile/arm-compiler-for-linux/arm-performance-libraries)
|
365 |
+
if(BLA_VENDOR MATCHES "Arm" OR BLA_VENDOR STREQUAL "All")
|
366 |
+
|
367 |
+
# Check for 64bit Integer support
|
368 |
+
if(BLA_VENDOR MATCHES "_ilp64")
|
369 |
+
set(LAPACK_armpl_LIB "armpl_ilp64")
|
370 |
+
else()
|
371 |
+
set(LAPACK_armpl_LIB "armpl_lp64")
|
372 |
+
endif()
|
373 |
+
|
374 |
+
# Check for OpenMP support, VIA BLA_VENDOR of Arm_mp or Arm_ipl64_mp
|
375 |
+
if(BLA_VENDOR MATCHES "_mp")
|
376 |
+
set(LAPACK_armpl_LIB "${LAPACK_armpl_LIB}_mp")
|
377 |
+
endif()
|
378 |
+
|
379 |
+
if(NOT LAPACK_LIBRARIES)
|
380 |
+
check_lapack_libraries(
|
381 |
+
LAPACK_LIBRARIES
|
382 |
+
LAPACK
|
383 |
+
cheev
|
384 |
+
""
|
385 |
+
"${LAPACK_armpl_LIB}"
|
386 |
+
""
|
387 |
+
""
|
388 |
+
""
|
389 |
+
"${BLAS_LIBRARIES}"
|
390 |
+
)
|
391 |
+
endif()
|
392 |
+
endif()
|
393 |
+
|
394 |
+
# FLAME's blis library? (https://github.com/flame/blis)
|
395 |
+
if(BLA_VENDOR STREQUAL "FLAME" OR BLA_VENDOR STREQUAL "All")
|
396 |
+
if(NOT LAPACK_LIBRARIES)
|
397 |
+
check_lapack_libraries(
|
398 |
+
LAPACK_LIBRARIES
|
399 |
+
LAPACK
|
400 |
+
cheev
|
401 |
+
""
|
402 |
+
"flame"
|
403 |
+
""
|
404 |
+
""
|
405 |
+
""
|
406 |
+
"${BLAS_LIBRARIES}"
|
407 |
+
)
|
408 |
+
endif()
|
409 |
+
endif()
|
410 |
+
|
411 |
+
# BLAS in acml library?
|
412 |
+
if(BLA_VENDOR MATCHES "ACML" OR BLA_VENDOR STREQUAL "All")
|
413 |
+
if(BLAS_LIBRARIES MATCHES ".+acml.+")
|
414 |
+
set(LAPACK_LIBRARIES ${BLAS_LIBRARIES})
|
415 |
+
endif()
|
416 |
+
endif()
|
417 |
+
|
418 |
+
# Apple LAPACK library?
|
419 |
+
if(BLA_VENDOR STREQUAL "Apple" OR BLA_VENDOR STREQUAL "All")
|
420 |
+
if(NOT LAPACK_LIBRARIES)
|
421 |
+
check_lapack_libraries(
|
422 |
+
LAPACK_LIBRARIES
|
423 |
+
LAPACK
|
424 |
+
cheev
|
425 |
+
""
|
426 |
+
"Accelerate"
|
427 |
+
""
|
428 |
+
""
|
429 |
+
""
|
430 |
+
"${BLAS_LIBRARIES}"
|
431 |
+
)
|
432 |
+
endif()
|
433 |
+
endif()
|
434 |
+
|
435 |
+
# Apple NAS (vecLib) library?
|
436 |
+
if(BLA_VENDOR STREQUAL "NAS" OR BLA_VENDOR STREQUAL "All")
|
437 |
+
if(NOT LAPACK_LIBRARIES)
|
438 |
+
check_lapack_libraries(
|
439 |
+
LAPACK_LIBRARIES
|
440 |
+
LAPACK
|
441 |
+
cheev
|
442 |
+
""
|
443 |
+
"vecLib"
|
444 |
+
""
|
445 |
+
""
|
446 |
+
""
|
447 |
+
"${BLAS_LIBRARIES}"
|
448 |
+
)
|
449 |
+
endif()
|
450 |
+
endif()
|
451 |
+
|
452 |
+
# Generic LAPACK library?
|
453 |
+
if(BLA_VENDOR STREQUAL "Generic" OR
|
454 |
+
BLA_VENDOR STREQUAL "ATLAS" OR
|
455 |
+
BLA_VENDOR STREQUAL "All")
|
456 |
+
if(NOT LAPACK_LIBRARIES)
|
457 |
+
check_lapack_libraries(
|
458 |
+
LAPACK_LIBRARIES
|
459 |
+
LAPACK
|
460 |
+
cheev
|
461 |
+
""
|
462 |
+
"lapack"
|
463 |
+
""
|
464 |
+
""
|
465 |
+
""
|
466 |
+
"${BLAS_LIBRARIES}"
|
467 |
+
)
|
468 |
+
endif()
|
469 |
+
if(NOT LAPACK_LIBRARIES AND NOT WIN32)
|
470 |
+
check_lapack_libraries(
|
471 |
+
LAPACK_LIBRARIES
|
472 |
+
LAPACK
|
473 |
+
cheev
|
474 |
+
""
|
475 |
+
"lapack;m;gfortran"
|
476 |
+
""
|
477 |
+
""
|
478 |
+
""
|
479 |
+
"${BLAS_LIBRARIES}"
|
480 |
+
)
|
481 |
+
endif()
|
482 |
+
endif()
|
483 |
+
else()
|
484 |
+
message(STATUS "LAPACK requires BLAS")
|
485 |
+
endif()
|
486 |
+
|
487 |
+
if(BLA_F95)
|
488 |
+
if(LAPACK95_LIBRARIES)
|
489 |
+
set(LAPACK95_FOUND TRUE)
|
490 |
+
else()
|
491 |
+
set(LAPACK95_FOUND FALSE)
|
492 |
+
endif()
|
493 |
+
if(NOT LAPACK_FIND_QUIETLY)
|
494 |
+
if(LAPACK95_FOUND)
|
495 |
+
message(STATUS "A library with LAPACK95 API found.")
|
496 |
+
else()
|
497 |
+
if(LAPACK_FIND_REQUIRED)
|
498 |
+
message(FATAL_ERROR
|
499 |
+
"A required library with LAPACK95 API not found. Please specify library location."
|
500 |
+
)
|
501 |
+
else()
|
502 |
+
message(STATUS
|
503 |
+
"A library with LAPACK95 API not found. Please specify library location."
|
504 |
+
)
|
505 |
+
endif()
|
506 |
+
endif()
|
507 |
+
endif()
|
508 |
+
set(LAPACK_FOUND "${LAPACK95_FOUND}")
|
509 |
+
set(LAPACK_LIBRARIES "${LAPACK95_LIBRARIES}")
|
510 |
+
else()
|
511 |
+
if(LAPACK_LIBRARIES)
|
512 |
+
set(LAPACK_FOUND TRUE)
|
513 |
+
else()
|
514 |
+
set(LAPACK_FOUND FALSE)
|
515 |
+
endif()
|
516 |
+
|
517 |
+
if(NOT LAPACK_FIND_QUIETLY)
|
518 |
+
if(LAPACK_FOUND)
|
519 |
+
message(STATUS "A library with LAPACK API found.")
|
520 |
+
else()
|
521 |
+
if(LAPACK_FIND_REQUIRED)
|
522 |
+
message(FATAL_ERROR
|
523 |
+
"A required library with LAPACK API not found. Please specify library location."
|
524 |
+
)
|
525 |
+
else()
|
526 |
+
message(STATUS
|
527 |
+
"A library with LAPACK API not found. Please specify library location."
|
528 |
+
)
|
529 |
+
endif()
|
530 |
+
endif()
|
531 |
+
endif()
|
532 |
+
endif()
|
533 |
+
|
534 |
+
# On compilers that implicitly link LAPACK (such as ftn, cc, and CC on Cray HPC machines)
|
535 |
+
# we used a placeholder for empty LAPACK_LIBRARIES to get through our logic above.
|
536 |
+
if(LAPACK_LIBRARIES STREQUAL "LAPACK_LIBRARIES-PLACEHOLDER-FOR-EMPTY-LIBRARIES")
|
537 |
+
set(LAPACK_LIBRARIES "")
|
538 |
+
endif()
|
539 |
+
|
540 |
+
if(NOT TARGET LAPACK::LAPACK)
|
541 |
+
add_library(LAPACK::LAPACK INTERFACE IMPORTED)
|
542 |
+
set(_lapack_libs "${LAPACK_LIBRARIES}")
|
543 |
+
if(_lapack_libs AND TARGET BLAS::BLAS)
|
544 |
+
# remove the ${BLAS_LIBRARIES} from the interface and replace it
|
545 |
+
# with the BLAS::BLAS target
|
546 |
+
list(REMOVE_ITEM _lapack_libs "${BLAS_LIBRARIES}")
|
547 |
+
endif()
|
548 |
+
|
549 |
+
if(_lapack_libs)
|
550 |
+
set_target_properties(LAPACK::LAPACK PROPERTIES
|
551 |
+
INTERFACE_LINK_LIBRARIES "${_lapack_libs}"
|
552 |
+
)
|
553 |
+
endif()
|
554 |
+
unset(_lapack_libs)
|
555 |
+
endif()
|
556 |
+
|
557 |
+
cmake_pop_check_state()
|
558 |
+
# restore original values for CMAKE_FIND_LIBRARY_SUFFIXES
|
559 |
+
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/portfile.cmake
ADDED
@@ -0,0 +1,142 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#TODO: Features to add:
|
2 |
+
# USE_XBLAS??? extended precision blas. needs xblas
|
3 |
+
# LAPACKE should be its own PORT
|
4 |
+
# USE_OPTIMIZED_LAPACK (Probably not what we want. Does a find_package(LAPACK): probably for LAPACKE only builds _> own port?)
|
5 |
+
# LAPACKE Builds LAPACKE
|
6 |
+
# LAPACKE_WITH_TMG Build LAPACKE with tmglib routines
|
7 |
+
if(EXISTS "${CURRENT_INSTALLED_DIR}/share/clapack/copyright")
|
8 |
+
message(FATAL_ERROR "Can't build ${PORT} if clapack is installed. Please remove clapack:${TARGET_TRIPLET}, and try to install ${PORT}:${TARGET_TRIPLET} again.")
|
9 |
+
endif()
|
10 |
+
|
11 |
+
include(vcpkg_find_fortran)
|
12 |
+
SET(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled)
|
13 |
+
|
14 |
+
set(lapack_ver 3.10.0)
|
15 |
+
|
16 |
+
vcpkg_from_github(
|
17 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
18 |
+
REPO "Reference-LAPACK/lapack"
|
19 |
+
REF "v${lapack_ver}"
|
20 |
+
SHA512 56055000c241bab8f318ebd79249ea012c33be0c4c3eca6a78e247f35ad9e8088f46605a0ba52fd5ad3e7898be3b7bc6c50ceb3af327c4986a266b06fe768cbf
|
21 |
+
HEAD_REF master
|
22 |
+
)
|
23 |
+
|
24 |
+
if(NOT VCPKG_TARGET_IS_WINDOWS)
|
25 |
+
set(ENV{FFLAGS} "$ENV{FFLAGS} -fPIC")
|
26 |
+
endif()
|
27 |
+
|
28 |
+
set(CBLAS OFF)
|
29 |
+
if("cblas" IN_LIST FEATURES)
|
30 |
+
set(CBLAS ON)
|
31 |
+
if("noblas" IN_LIST FEATURES)
|
32 |
+
message(FATAL_ERROR "Cannot built feature 'cblas' together with feature 'noblas'. cblas requires blas!")
|
33 |
+
endif()
|
34 |
+
endif()
|
35 |
+
|
36 |
+
set(USE_OPTIMIZED_BLAS OFF)
|
37 |
+
if("noblas" IN_LIST FEATURES)
|
38 |
+
set(USE_OPTIMIZED_BLAS ON)
|
39 |
+
set(pcfile "${CURRENT_INSTALLED_DIR}/lib/pkgconfig/openblas.pc")
|
40 |
+
if(EXISTS "${pcfile}")
|
41 |
+
file(CREATE_LINK "${pcfile}" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/blas.pc" COPY_ON_ERROR)
|
42 |
+
endif()
|
43 |
+
set(pcfile "${CURRENT_INSTALLED_DIR}/debug/lib/pkgconfig/openblas.pc")
|
44 |
+
if(EXISTS "${pcfile}")
|
45 |
+
file(CREATE_LINK "${pcfile}" "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/blas.pc" COPY_ON_ERROR)
|
46 |
+
endif()
|
47 |
+
endif()
|
48 |
+
|
49 |
+
set(VCPKG_CRT_LINKAGE_BACKUP ${VCPKG_CRT_LINKAGE})
|
50 |
+
vcpkg_find_fortran(FORTRAN_CMAKE)
|
51 |
+
if(VCPKG_USE_INTERNAL_Fortran)
|
52 |
+
if(VCPKG_CRT_LINKAGE_BACKUP STREQUAL static)
|
53 |
+
# If openblas has been built with static crt linkage we cannot use it with gfortran!
|
54 |
+
set(USE_OPTIMIZED_BLAS OFF)
|
55 |
+
#Cannot use openblas from vcpkg if we are building with gfortran here.
|
56 |
+
if("noblas" IN_LIST FEATURES)
|
57 |
+
message(FATAL_ERROR "Feature 'noblas' cannot be used without supplying an external fortran compiler")
|
58 |
+
endif()
|
59 |
+
endif()
|
60 |
+
else()
|
61 |
+
set(USE_OPTIMIZED_BLAS ON)
|
62 |
+
endif()
|
63 |
+
|
64 |
+
vcpkg_cmake_configure(
|
65 |
+
SOURCE_PATH "${SOURCE_PATH}"
|
66 |
+
OPTIONS
|
67 |
+
"-DUSE_OPTIMIZED_BLAS=${USE_OPTIMIZED_BLAS}"
|
68 |
+
"-DCBLAS=${CBLAS}"
|
69 |
+
${FORTRAN_CMAKE}
|
70 |
+
)
|
71 |
+
|
72 |
+
vcpkg_cmake_install()
|
73 |
+
|
74 |
+
vcpkg_cmake_config_fixup(PACKAGE_NAME lapack-${lapack_ver} CONFIG_PATH lib/cmake/lapack-${lapack_ver}) #Should the target path be lapack and not lapack-reference?
|
75 |
+
|
76 |
+
set(pcfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/lapack.pc")
|
77 |
+
if(EXISTS "${pcfile}")
|
78 |
+
file(READ "${pcfile}" _contents)
|
79 |
+
set(_contents "prefix=${CURRENT_INSTALLED_DIR}\n${_contents}")
|
80 |
+
file(WRITE "${pcfile}" "${_contents}")
|
81 |
+
endif()
|
82 |
+
set(pcfile "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/lapack.pc")
|
83 |
+
if(EXISTS "${pcfile}")
|
84 |
+
file(READ "${pcfile}" _contents)
|
85 |
+
set(_contents "prefix=${CURRENT_INSTALLED_DIR}/debug\n${_contents}")
|
86 |
+
file(WRITE "${pcfile}" "${_contents}")
|
87 |
+
endif()
|
88 |
+
if(NOT USE_OPTIMIZED_BLAS AND NOT (VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "static"))
|
89 |
+
set(pcfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/blas.pc")
|
90 |
+
if(EXISTS "${pcfile}")
|
91 |
+
file(READ "${pcfile}" _contents)
|
92 |
+
set(_contents "prefix=${CURRENT_INSTALLED_DIR}\n${_contents}")
|
93 |
+
file(WRITE "${pcfile}" "${_contents}")
|
94 |
+
endif()
|
95 |
+
set(pcfile "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/blas.pc")
|
96 |
+
if(EXISTS "${pcfile}")
|
97 |
+
file(READ "${pcfile}" _contents)
|
98 |
+
set(_contents "prefix=${CURRENT_INSTALLED_DIR}/debug\n${_contents}")
|
99 |
+
file(WRITE "${pcfile}" "${_contents}")
|
100 |
+
endif()
|
101 |
+
endif()
|
102 |
+
if("cblas" IN_LIST FEATURES)
|
103 |
+
set(pcfile "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/cblas.pc")
|
104 |
+
if(EXISTS "${pcfile}")
|
105 |
+
file(READ "${pcfile}" _contents)
|
106 |
+
set(_contents "prefix=${CURRENT_INSTALLED_DIR}\n${_contents}")
|
107 |
+
file(WRITE "${pcfile}" "${_contents}")
|
108 |
+
endif()
|
109 |
+
set(pcfile "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/cblas.pc")
|
110 |
+
if(EXISTS "${pcfile}")
|
111 |
+
file(READ "${pcfile}" _contents)
|
112 |
+
set(_contents "prefix=${CURRENT_INSTALLED_DIR}/debug\n${_contents}")
|
113 |
+
file(WRITE "${pcfile}" "${_contents}")
|
114 |
+
endif()
|
115 |
+
endif()
|
116 |
+
vcpkg_fixup_pkgconfig()
|
117 |
+
|
118 |
+
# Handle copyright
|
119 |
+
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
120 |
+
|
121 |
+
# remove debug includes
|
122 |
+
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
123 |
+
|
124 |
+
if(VCPKG_TARGET_IS_WINDOWS)
|
125 |
+
if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/liblapack.lib")
|
126 |
+
file(RENAME "${CURRENT_PACKAGES_DIR}/lib/liblapack.lib" "${CURRENT_PACKAGES_DIR}/lib/lapack.lib")
|
127 |
+
endif()
|
128 |
+
if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/lib/liblapack.lib")
|
129 |
+
file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/liblapack.lib" "${CURRENT_PACKAGES_DIR}/debug/lib/lapack.lib")
|
130 |
+
endif()
|
131 |
+
if(NOT USE_OPTIMIZED_BLAS)
|
132 |
+
if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/libblas.lib")
|
133 |
+
file(RENAME "${CURRENT_PACKAGES_DIR}/lib/libblas.lib" "${CURRENT_PACKAGES_DIR}/lib/blas.lib")
|
134 |
+
endif()
|
135 |
+
if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/lib/libblas.lib")
|
136 |
+
file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/libblas.lib" "${CURRENT_PACKAGES_DIR}/debug/lib/blas.lib")
|
137 |
+
endif()
|
138 |
+
endif()
|
139 |
+
endif()
|
140 |
+
|
141 |
+
file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/lapack)
|
142 |
+
file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindLAPACK.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/lapack)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/vcpkg-cmake-wrapper.cmake
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
message(STATUS "Using VCPKG FindLAPACK from package 'lapack-reference'")
|
2 |
+
set(LAPACK_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
|
3 |
+
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
4 |
+
|
5 |
+
list(REMOVE_ITEM ARGS "NO_MODULE")
|
6 |
+
list(REMOVE_ITEM ARGS "CONFIG")
|
7 |
+
list(REMOVE_ITEM ARGS "MODULE")
|
8 |
+
|
9 |
+
_find_package(${ARGS})
|
10 |
+
|
11 |
+
set(CMAKE_MODULE_PATH ${LAPACK_PREV_MODULE_PATH})
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lapack-reference/vcpkg.json
ADDED
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lapack-reference",
|
3 |
+
"version": "3.10.0",
|
4 |
+
"description": "LAPACK - Linear Algebra PACKage",
|
5 |
+
"homepage": "http://www.netlib.org/lapack/",
|
6 |
+
"license": "BSD-3-Clause-Open-MPI",
|
7 |
+
"dependencies": [
|
8 |
+
{
|
9 |
+
"name": "vcpkg-cmake",
|
10 |
+
"host": true
|
11 |
+
},
|
12 |
+
{
|
13 |
+
"name": "vcpkg-cmake-config",
|
14 |
+
"host": true
|
15 |
+
},
|
16 |
+
{
|
17 |
+
"name": "vcpkg-gfortran",
|
18 |
+
"platform": "windows"
|
19 |
+
}
|
20 |
+
],
|
21 |
+
"default-features": [
|
22 |
+
"blas-select"
|
23 |
+
],
|
24 |
+
"features": {
|
25 |
+
"blas-select": {
|
26 |
+
"description": "Use external optimized BLAS",
|
27 |
+
"dependencies": [
|
28 |
+
{
|
29 |
+
"name": "lapack-reference",
|
30 |
+
"default-features": false,
|
31 |
+
"features": [
|
32 |
+
"noblas"
|
33 |
+
],
|
34 |
+
"platform": "!windows | !static"
|
35 |
+
}
|
36 |
+
]
|
37 |
+
},
|
38 |
+
"cblas": {
|
39 |
+
"description": "Builds CBLAS"
|
40 |
+
},
|
41 |
+
"noblas": {
|
42 |
+
"description": "Use external optimized BLAS",
|
43 |
+
"dependencies": [
|
44 |
+
"blas"
|
45 |
+
]
|
46 |
+
}
|
47 |
+
}
|
48 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lastools/fix_install_paths_lastools.patch
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/LASlib/src/CMakeLists.txt b/LASlib/src/CMakeLists.txt
|
2 |
+
index 1b170bf..b5c40cb 100644
|
3 |
+
--- a/LASlib/src/CMakeLists.txt
|
4 |
+
+++ b/LASlib/src/CMakeLists.txt
|
5 |
+
@@ -99,17 +99,8 @@ if(MSVC)
|
6 |
+
)
|
7 |
+
endif()
|
8 |
+
|
9 |
+
+install(TARGETS LASlib EXPORT LASlib-targets
|
10 |
+
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
11 |
+
install(FILES ${LAS_INCLUDES} DESTINATION include/LASlib)
|
12 |
+
-
|
13 |
+
-if (MSVC)
|
14 |
+
- foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
|
15 |
+
- install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../lib/${OUTPUTCONFIG} DESTINATION lib/LASlib)
|
16 |
+
- endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )
|
17 |
+
-else()
|
18 |
+
- install(TARGETS LASlib EXPORT laslib-targets
|
19 |
+
- ARCHIVE DESTINATION lib/LASlib
|
20 |
+
- LIBRARY DESTINATION lib/LASlib
|
21 |
+
- RUNTIME DESTINATION lib/LASlib)
|
22 |
+
- install(EXPORT laslib-targets DESTINATION lib/cmake/LASlib)
|
23 |
+
- install(FILES ${CMAKE_SOURCE_DIR}/LASlib/src/laslib-config.cmake DESTINATION lib/cmake/LASlib)
|
24 |
+
-endif(MSVC)
|
25 |
+
+install(EXPORT LASlib-targets DESTINATION share/lastools/LASlib)
|
26 |
+
+install(FILES ${CMAKE_SOURCE_DIR}/LASlib/src/laslib-config.cmake DESTINATION share/lastools/LASlib)
|
27 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lastools/portfile.cmake
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
2 |
+
message(FATAL_ERROR "${PORT} doesn't currently support UWP.")
|
3 |
+
endif()
|
4 |
+
|
5 |
+
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
6 |
+
|
7 |
+
vcpkg_from_github(
|
8 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
9 |
+
REPO LAStools/LAStools
|
10 |
+
REF 7c444a4bbae16fe43c676824a26419bb740a6ab8
|
11 |
+
SHA512 4503b033a5319caee5570f25a05009c0d05a8c61a43ed78317899faaeba82fbc1f9a8c8433772bb36547c74e850a2e68d20a16f6f22b12b3004da7e1aa2f334b
|
12 |
+
HEAD_REF master
|
13 |
+
PATCHES
|
14 |
+
"fix_install_paths_lastools.patch"
|
15 |
+
)
|
16 |
+
|
17 |
+
vcpkg_configure_cmake(
|
18 |
+
SOURCE_PATH ${SOURCE_PATH}
|
19 |
+
PREFER_NINJA
|
20 |
+
)
|
21 |
+
|
22 |
+
vcpkg_install_cmake()
|
23 |
+
|
24 |
+
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
25 |
+
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
26 |
+
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
|
27 |
+
endif()
|
28 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
|
29 |
+
|
30 |
+
# Handle copyright
|
31 |
+
file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
32 |
+
file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)
|
33 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lastools/vcpkg.json
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lastools",
|
3 |
+
"version-string": "2020-05-09",
|
4 |
+
"port-version": 1,
|
5 |
+
"description": "LAStools: award-winning software for efficient LiDAR processing (with LASzip)",
|
6 |
+
"homepage": "https://github.com/LAStools/LAStools",
|
7 |
+
"supports": "!uwp"
|
8 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/laszip/portfile.cmake
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_from_github(
|
2 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
3 |
+
REPO LASzip/LASzip
|
4 |
+
REF 1ab671e42ff1f086e29d5b7e300a5026e7b8d69b # 3.4.3
|
5 |
+
SHA512 7ec20d6999b16e6a74a64d1dc3e9f1b1b4510acd306d30ccae34a543ca0dc52e1d1d989279fafdda321616ba1e0ceb59a093d8c61ba5a586b760efa0d00a0184
|
6 |
+
HEAD_REF master
|
7 |
+
)
|
8 |
+
|
9 |
+
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" LASZIP_BUILD_STATIC)
|
10 |
+
|
11 |
+
vcpkg_cmake_configure(
|
12 |
+
SOURCE_PATH ${SOURCE_PATH}
|
13 |
+
OPTIONS
|
14 |
+
-DLASZIP_BUILD_STATIC=${LASZIP_BUILD_STATIC}
|
15 |
+
)
|
16 |
+
|
17 |
+
vcpkg_cmake_install()
|
18 |
+
|
19 |
+
# Handle copyright
|
20 |
+
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/laszip" RENAME copyright)
|
21 |
+
|
22 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
23 |
+
# Remove laszip_api3 dll since it doesn't export functions properly during build.
|
24 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin/laszip_api3.dll")
|
25 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/laszip_api3.dll")
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/laszip/vcpkg.json
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "laszip",
|
3 |
+
"version": "3.4.3",
|
4 |
+
"port-version": 1,
|
5 |
+
"description": "LASzip - free and lossless LiDAR compression",
|
6 |
+
"homepage": "https://laszip.org/",
|
7 |
+
"dependencies": [
|
8 |
+
{
|
9 |
+
"name": "vcpkg-cmake",
|
10 |
+
"host": true
|
11 |
+
},
|
12 |
+
{
|
13 |
+
"name": "vcpkg-cmake-config",
|
14 |
+
"host": true
|
15 |
+
}
|
16 |
+
]
|
17 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/launch-darkly-server/portfile.cmake
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_from_github(
|
2 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
3 |
+
REPO launchdarkly/c-server-sdk
|
4 |
+
REF 0d9db81862e1b17426da9b433a19376dd6458937 # 2.4.3
|
5 |
+
SHA512 1bbafd212b0a271909a03319954ee2c92a3dde713fe7f9e0fdd79a5f011f0775701060b66ae9b3a4efad59376241b893d4b3d6679743c41e7657c355c7e3df5c
|
6 |
+
HEAD_REF master
|
7 |
+
)
|
8 |
+
|
9 |
+
vcpkg_cmake_configure(
|
10 |
+
SOURCE_PATH "${SOURCE_PATH}"
|
11 |
+
OPTIONS
|
12 |
+
"-DBUILD_TESTING=OFF"
|
13 |
+
"-DSKIP_DATABASE_TESTS=OFF"
|
14 |
+
)
|
15 |
+
|
16 |
+
vcpkg_cmake_install()
|
17 |
+
|
18 |
+
if(VCPKG_TARGET_IS_WINDOWS)
|
19 |
+
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
20 |
+
file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
|
21 |
+
file(RENAME "${CURRENT_PACKAGES_DIR}/lib/ldserverapi.dll" "${CURRENT_PACKAGES_DIR}/bin/ldserverapi.dll")
|
22 |
+
file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/ldserverapi.dll" "${CURRENT_PACKAGES_DIR}/debug/bin/ldserverapi.dll")
|
23 |
+
endif()
|
24 |
+
endif()
|
25 |
+
|
26 |
+
file(REMOVE_RECURSE
|
27 |
+
"${CURRENT_PACKAGES_DIR}/debug/include"
|
28 |
+
)
|
29 |
+
|
30 |
+
vcpkg_copy_pdbs()
|
31 |
+
|
32 |
+
# Handle copyright
|
33 |
+
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/launch-darkly-server/vcpkg.json
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "launch-darkly-server",
|
3 |
+
"version": "2.4.3",
|
4 |
+
"description": "LaunchDarkly server-side SDK for C/C++",
|
5 |
+
"homepage": "https://github.com/launchdarkly/c-server-sdk",
|
6 |
+
"supports": "!uwp & !arm",
|
7 |
+
"dependencies": [
|
8 |
+
"curl",
|
9 |
+
"pcre",
|
10 |
+
{
|
11 |
+
"name": "vcpkg-cmake",
|
12 |
+
"host": true
|
13 |
+
},
|
14 |
+
{
|
15 |
+
"name": "vcpkg-cmake-config",
|
16 |
+
"host": true
|
17 |
+
}
|
18 |
+
]
|
19 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lazy-importer/portfile.cmake
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# header-only library
|
2 |
+
|
3 |
+
vcpkg_from_github(
|
4 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
5 |
+
REPO JustasMasiulis/lazy_importer
|
6 |
+
REF edac6afddb9e0df2e3affa8b2d631caafcba69ed
|
7 |
+
SHA512 45f024c34fa1c8854b8b77706934ce95449b2416a5c1dcab970d0df068c9b5bf0de12994c13ac215e629f8ae21fdab75b4ce6535f56ca7508f490a4c664e5b1a
|
8 |
+
HEAD_REF master
|
9 |
+
)
|
10 |
+
|
11 |
+
file(COPY "${SOURCE_PATH}/include/lazy_importer.hpp" DESTINATION "${CURRENT_PACKAGES_DIR}/include")
|
12 |
+
|
13 |
+
# Handle copyright
|
14 |
+
configure_file("${SOURCE_PATH}/LICENSE" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lazy-importer/vcpkg.json
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lazy-importer",
|
3 |
+
"version-date": "2022-02-09",
|
4 |
+
"description": "Library for importing functions from dlls in a hidden, reverse engineer unfriendly way",
|
5 |
+
"homepage": "https://github.com/JustasMasiulis/lazy_importer"
|
6 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/fix-build-error.patch
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/lcm/windows/WinPorting.cpp b/lcm/windows/WinPorting.cpp
|
2 |
+
index e22acd6..b9c7e69 100644
|
3 |
+
--- a/lcm/windows/WinPorting.cpp
|
4 |
+
+++ b/lcm/windows/WinPorting.cpp
|
5 |
+
@@ -1,8 +1,8 @@
|
6 |
+
|
7 |
+
#define _WIN32_WINNT 0x0501
|
8 |
+
-#include <Mswsock.h>
|
9 |
+
#include <stdio.h>
|
10 |
+
#include <winsock2.h>
|
11 |
+
+#include <Mswsock.h>
|
12 |
+
|
13 |
+
#include "WinPorting.h"
|
14 |
+
|
15 |
+
diff --git a/lcmgen/emit_go.c b/lcmgen/emit_go.c
|
16 |
+
index c520044..b5be56a 100644
|
17 |
+
--- a/lcmgen/emit_go.c
|
18 |
+
+++ b/lcmgen/emit_go.c
|
19 |
+
@@ -6,8 +6,13 @@
|
20 |
+
#include <stdio.h>
|
21 |
+
#include <stdlib.h>
|
22 |
+
#include <string.h>
|
23 |
+
+#ifdef WIN32
|
24 |
+
+#include <io.h>
|
25 |
+
+#else
|
26 |
+
#include <unistd.h>
|
27 |
+
+#endif
|
28 |
+
#ifdef WIN32
|
29 |
+
+#define F_OK 0
|
30 |
+
#define __STDC_FORMAT_MACROS // Enable integer types
|
31 |
+
#endif
|
32 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/glib.link.patch
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/cmake/FindGLib2.cmake b/cmake/FindGLib2.cmake
|
2 |
+
index 2f1a8be45..db823b953 100644
|
3 |
+
--- a/cmake/FindGLib2.cmake
|
4 |
+
+++ b/cmake/FindGLib2.cmake
|
5 |
+
@@ -14,7 +14,7 @@ function(_glib2_find_include VAR HEADER)
|
6 |
+
|
7 |
+
find_path(GLIB2_${VAR}_INCLUDE_DIR ${HEADER}
|
8 |
+
PATHS ${_paths}
|
9 |
+
- PATH_SUFFIXES glib-2.0 glib-2.0/include
|
10 |
+
+ PATH_SUFFIXES glib-2.0 glib-2.0/include lib/glib-2.0/include
|
11 |
+
)
|
12 |
+
mark_as_advanced(GLIB2_${VAR}_INCLUDE_DIR)
|
13 |
+
endfunction()
|
14 |
+
@@ -108,6 +108,16 @@ foreach(_glib2_component ${GLib2_FIND_COMPONENTS})
|
15 |
+
|
16 |
+
endforeach()
|
17 |
+
|
18 |
+
+find_library(PCRE_LIBRARY pcre)
|
19 |
+
+set_property(TARGET GLib2::glib APPEND PROPERTY
|
20 |
+
+ INTERFACE_LINK_LIBRARIES ${PCRE_LIBRARY}
|
21 |
+
+)
|
22 |
+
+set(THREADS_PREFER_PTHREAD_FLAG ON)
|
23 |
+
+find_package(Threads)
|
24 |
+
+set_property(TARGET GLib2::glib APPEND PROPERTY
|
25 |
+
+ INTERFACE_LINK_LIBRARIES Threads::Threads
|
26 |
+
+)
|
27 |
+
+
|
28 |
+
list(APPEND GLib2_FIND_COMPONENTS glib)
|
29 |
+
set(GLib2_FIND_REQUIRED_glib TRUE)
|
30 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/only-install-one-flavor.patch
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/lcm/CMakeLists.txt b/lcm/CMakeLists.txt
|
2 |
+
index a706a85..639ec12 100644
|
3 |
+
--- a/lcm/CMakeLists.txt
|
4 |
+
+++ b/lcm/CMakeLists.txt
|
5 |
+
@@ -76,8 +76,12 @@ endif()
|
6 |
+
target_include_directories(lcm-coretypes INTERFACE
|
7 |
+
$<BUILD_INTERFACE:${lcm_SOURCE_DIR}>
|
8 |
+
)
|
9 |
+
-
|
10 |
+
-install(TARGETS lcm-coretypes lcm-static lcm
|
11 |
+
+if(BUILD_SHARED_LIBS)
|
12 |
+
+ set(INSTALL_TARGETS lcm)
|
13 |
+
+else()
|
14 |
+
+ set(INSTALL_TARGETS lcm-static)
|
15 |
+
+endif()
|
16 |
+
+install(TARGETS lcm-coretypes ${INSTALL_TARGETS}
|
17 |
+
EXPORT lcmTargets
|
18 |
+
RUNTIME DESTINATION bin
|
19 |
+
LIBRARY DESTINATION lib${LIB_SUFFIX}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/portfile.cmake
ADDED
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_from_github(
|
2 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
3 |
+
REPO lcm-proj/lcm
|
4 |
+
REF v1.4.0
|
5 |
+
SHA512 ca036aa2c31911e0bfaeab9665188c97726201267314693a1c333c4efe13ea598b39a55a19bc1d48e65462ac9d1716adfda5af86c645d59c3247192631247cc6
|
6 |
+
HEAD_REF master
|
7 |
+
PATCHES
|
8 |
+
only-install-one-flavor.patch
|
9 |
+
fix-build-error.patch
|
10 |
+
glib.link.patch
|
11 |
+
)
|
12 |
+
|
13 |
+
vcpkg_configure_cmake(
|
14 |
+
SOURCE_PATH ${SOURCE_PATH}
|
15 |
+
PREFER_NINJA
|
16 |
+
OPTIONS
|
17 |
+
-DLCM_ENABLE_JAVA=OFF
|
18 |
+
-DLCM_ENABLE_LUA=OFF
|
19 |
+
-DLCM_ENABLE_PYTHON=OFF
|
20 |
+
-DLCM_ENABLE_TESTS=OFF
|
21 |
+
-DLCM_INSTALL_M4MACROS=OFF
|
22 |
+
-DLCM_INSTALL_PKGCONFIG=OFF
|
23 |
+
)
|
24 |
+
|
25 |
+
vcpkg_install_cmake()
|
26 |
+
if (VCPKG_TARGET_IS_WINDOWS)
|
27 |
+
vcpkg_fixup_cmake_targets(CONFIG_PATH cmake)
|
28 |
+
else()
|
29 |
+
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/lcm/cmake)
|
30 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/lib/lcm" "${CURRENT_PACKAGES_DIR}/lib/lcm")
|
31 |
+
endif()
|
32 |
+
|
33 |
+
|
34 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
35 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
|
36 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/aclocal")
|
37 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/java")
|
38 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/man")
|
39 |
+
|
40 |
+
file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe)
|
41 |
+
if(EXES)
|
42 |
+
file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/lcm)
|
43 |
+
file(REMOVE ${EXES})
|
44 |
+
endif()
|
45 |
+
file(GLOB DEBUG_EXES ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe)
|
46 |
+
if(DEBUG_EXES)
|
47 |
+
file(REMOVE ${DEBUG_EXES})
|
48 |
+
endif()
|
49 |
+
|
50 |
+
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
51 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
|
52 |
+
endif()
|
53 |
+
|
54 |
+
vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/lcm)
|
55 |
+
|
56 |
+
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
57 |
+
|
58 |
+
vcpkg_copy_pdbs()
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcm/vcpkg.json
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lcm",
|
3 |
+
"version": "1.4.0",
|
4 |
+
"port-version": 2,
|
5 |
+
"description": [
|
6 |
+
"Lightweight Communications and Marshalling (LCM)",
|
7 |
+
"LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical. It provides a publish/subscribe message passing model and automatic marshalling/unmarshalling code generation with bindings for applications in a variety of programming languages."
|
8 |
+
],
|
9 |
+
"homepage": "https://github.com/lcm-proj/lcm",
|
10 |
+
"dependencies": [
|
11 |
+
"glib"
|
12 |
+
]
|
13 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/CMakeLists.txt
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
cmake_minimum_required(VERSION 3.5)
|
2 |
+
|
3 |
+
project(little-cms)
|
4 |
+
|
5 |
+
file(GLOB SRCS src/*.c)
|
6 |
+
|
7 |
+
add_library(lcms2 ${SRCS} src/lcms2.def)
|
8 |
+
|
9 |
+
if(BUILD_SHARED_LIBS)
|
10 |
+
target_compile_options(lcms2 PRIVATE -DCMS_DLL_BUILD)
|
11 |
+
target_compile_options(lcms2 PUBLIC -DCMS_DLL)
|
12 |
+
endif()
|
13 |
+
target_compile_options(lcms2 PRIVATE -DUNICODE -D_UNICODE)
|
14 |
+
|
15 |
+
target_include_directories(lcms2 PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include> $<INSTALL_INTERFACE:include>)
|
16 |
+
set_target_properties(lcms2 PROPERTIES PUBLIC_HEADER "${CMAKE_CURRENT_LIST_DIR}/include/lcms2.h;${CMAKE_CURRENT_LIST_DIR}/include/lcms2_plugin.h")
|
17 |
+
|
18 |
+
# Generate pkg-config file
|
19 |
+
SET(PACKAGE "lcms2")
|
20 |
+
# Read VERSION from file configure
|
21 |
+
file(READ "${CMAKE_CURRENT_LIST_DIR}/configure" lcms2_configure)
|
22 |
+
string(REGEX MATCH "PACKAGE_VERSION='(([0-9]+)\\.([0-9]+))'" _ ${lcms2_configure})
|
23 |
+
set(VERSION "${CMAKE_MATCH_1}")
|
24 |
+
SET(prefix "${CMAKE_INSTALL_PREFIX}")
|
25 |
+
SET(exec_prefix "\${prefix}")
|
26 |
+
SET(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
|
27 |
+
SET(includedir "\${prefix}/include")
|
28 |
+
CONFIGURE_FILE(lcms2.pc.in "${PROJECT_BINARY_DIR}/lcms2.pc" @ONLY)
|
29 |
+
|
30 |
+
install(TARGETS lcms2
|
31 |
+
EXPORT lcms2Config
|
32 |
+
RUNTIME DESTINATION "bin"
|
33 |
+
LIBRARY DESTINATION "lib"
|
34 |
+
ARCHIVE DESTINATION "lib"
|
35 |
+
PUBLIC_HEADER DESTINATION "include"
|
36 |
+
)
|
37 |
+
|
38 |
+
INSTALL(FILES ${PROJECT_BINARY_DIR}/lcms2.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
|
39 |
+
|
40 |
+
install(EXPORT lcms2Config
|
41 |
+
DESTINATION "share/lcms2"
|
42 |
+
NAMESPACE lcms2::
|
43 |
+
)
|
44 |
+
|
45 |
+
# Backwards compatibility for previous vcpkg users
|
46 |
+
add_library(lcms INTERFACE)
|
47 |
+
target_link_libraries(lcms INTERFACE lcms2)
|
48 |
+
|
49 |
+
|
50 |
+
install(TARGETS lcms EXPORT lcms-targets)
|
51 |
+
install(EXPORT lcms-targets
|
52 |
+
DESTINATION "share/lcms"
|
53 |
+
NAMESPACE lcms::
|
54 |
+
)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/portfile.cmake
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
2 |
+
set(ADDITIONAL_PATCH "shared.patch")
|
3 |
+
endif()
|
4 |
+
|
5 |
+
vcpkg_from_github(
|
6 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
7 |
+
REPO mm2/Little-CMS
|
8 |
+
REF 924a020d09bfe468c665467caf24aadeb41ff77c # 2.12
|
9 |
+
SHA512 0c2dc069878ca38a92af4800aa3fb2660203fbcdf6dccd9db60cfacb6896185e3e9222893f39ec3e132b0f4900a2932d490dd8db5b1b431519966a64d28404d2
|
10 |
+
HEAD_REF master
|
11 |
+
PATCHES
|
12 |
+
remove_library_directive.patch
|
13 |
+
${ADDITIONAL_PATCH}
|
14 |
+
)
|
15 |
+
|
16 |
+
file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
|
17 |
+
|
18 |
+
vcpkg_cmake_configure(SOURCE_PATH "${SOURCE_PATH}")
|
19 |
+
vcpkg_cmake_install()
|
20 |
+
|
21 |
+
vcpkg_copy_pdbs()
|
22 |
+
vcpkg_cmake_config_fixup(PACKAGE_NAME lcms2)
|
23 |
+
vcpkg_cmake_config_fixup() # provides old PACKAGE_NAME lcms
|
24 |
+
vcpkg_fixup_pkgconfig()
|
25 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
26 |
+
file(WRITE "${CURRENT_PACKAGES_DIR}/share/lcms/lcms-config.cmake" [[
|
27 |
+
include(CMakeFindDependencyMacro)
|
28 |
+
find_dependency(lcms2 CONFIG)
|
29 |
+
include(${CMAKE_CURRENT_LIST_DIR}/lcms-targets.cmake)
|
30 |
+
]])
|
31 |
+
|
32 |
+
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
33 |
+
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/remove_library_directive.patch
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
--- a/src/lcms2.def 2016-07-20 09:46:01.000000000 +0200
|
2 |
+
+++ b/src/lcms2.def 2018-06-02 02:11:04.135781600 +0200
|
3 |
+
@@ -1,5 +1,3 @@
|
4 |
+
-LIBRARY LCMS2.DLL
|
5 |
+
-
|
6 |
+
EXPORTS
|
7 |
+
|
8 |
+
_cms15Fixed16toDouble = _cms15Fixed16toDouble
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/shared.patch
ADDED
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
--- a/include/lcms2.h Wed Jul 20 08:46:01 2016
|
2 |
+
+++ b/include/lcms2.h Mon Jan 30 15:01:12 2017
|
3 |
+
@@ -212,6 +212,7 @@
|
4 |
+
|
5 |
+
#endif // CMS_USE_BIG_ENDIAN
|
6 |
+
|
7 |
+
+#define CMS_DLL
|
8 |
+
|
9 |
+
// Calling convention -- this is hardly platform and compiler dependent
|
10 |
+
#ifdef CMS_IS_WINDOWS_
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/usage
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
The package lcms provides CMake targets:
|
2 |
+
|
3 |
+
find_package(lcms2 CONFIG REQUIRED)
|
4 |
+
target_link_libraries(main PRIVATE lcms2::lcms2)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lcms/vcpkg.json
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lcms",
|
3 |
+
"version": "2.12",
|
4 |
+
"port-version": 3,
|
5 |
+
"description": "Little CMS.",
|
6 |
+
"homepage": "https://github.com/mm2/Little-CMS",
|
7 |
+
"dependencies": [
|
8 |
+
{
|
9 |
+
"name": "vcpkg-cmake",
|
10 |
+
"host": true
|
11 |
+
},
|
12 |
+
{
|
13 |
+
"name": "vcpkg-cmake-config",
|
14 |
+
"host": true
|
15 |
+
}
|
16 |
+
]
|
17 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leaf/portfile.cmake
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leaf/vcpkg.json
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "leaf",
|
3 |
+
"version-string": "0.2.2",
|
4 |
+
"port-version": 1,
|
5 |
+
"description": "Deprecated boost-leaf port.",
|
6 |
+
"dependencies": [
|
7 |
+
"boost-leaf"
|
8 |
+
]
|
9 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lemon/portfile.cmake
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
2 |
+
|
3 |
+
message(WARNING "The lemon port is deprecated, use liblemon instead")
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lemon/vcpkg.json
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lemon",
|
3 |
+
"version-string": "0",
|
4 |
+
"port-version": 1,
|
5 |
+
"description": "Deprecated port, use liblemon instead",
|
6 |
+
"dependencies": [
|
7 |
+
"liblemon"
|
8 |
+
]
|
9 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leptonica/fix-CMakeDependency.patch
ADDED
@@ -0,0 +1,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
2 |
+
index 6d300da..fae4ca7 100644
|
3 |
+
--- a/CMakeLists.txt
|
4 |
+
+++ b/CMakeLists.txt
|
5 |
+
@@ -66,8 +66,28 @@ if(NOT SW_BUILD)
|
6 |
+
find_package(PNG)
|
7 |
+
find_package(TIFF)
|
8 |
+
find_package(ZLIB)
|
9 |
+
- find_package(PkgConfig)
|
10 |
+
- if (PKG_CONFIG_FOUND)
|
11 |
+
+ find_package(WEBP NAMES WebP REQUIRED)
|
12 |
+
+ find_package(JP2K NAMES OpenJPEG REQUIRED)
|
13 |
+
+
|
14 |
+
+ set(GIF_LIBRARIES GIF::GIF)
|
15 |
+
+ set(JPEG_LIBRARIES JPEG::JPEG)
|
16 |
+
+ set(PNG_LIBRARIES PNG::PNG)
|
17 |
+
+ set(TIFF_LIBRARIES TIFF::TIFF)
|
18 |
+
+ set(ZLIB_LIBRARIES ZLIB::ZLIB)
|
19 |
+
+
|
20 |
+
+ set(JP2K "${JP2K_FOUND}")
|
21 |
+
+ set(JP2K_INCLUDE_DIRS "")
|
22 |
+
+ set(HAVE_LIBJP2K 1)
|
23 |
+
+ set(JP2K_LIBRARIES openjp2) # imported target
|
24 |
+
+
|
25 |
+
+ set(WEBP "${WEBP_FOUND}")
|
26 |
+
+ set(WEBP_INCLUDE_DIRS "")
|
27 |
+
+ set(WEBPMUX 1)
|
28 |
+
+ set(HAVE_LIBWEBP_ANIM 1)
|
29 |
+
+ set(WEBPMUX_FOUND TRUE)
|
30 |
+
+ set(WEBP_LIBRARIES WebP::libwebpmux WebP::webp)
|
31 |
+
+
|
32 |
+
+ if (0)
|
33 |
+
pkg_check_modules(WEBP libwebp QUIET)
|
34 |
+
pkg_check_modules(WEBPMUX libwebpmux>=${MINIMUM_WEBPMUX_VERSION} QUIET)
|
35 |
+
pkg_check_modules(JP2K libopenjp2>=2.0 QUIET)
|
36 |
+
diff --git a/cmake/templates/LeptonicaConfig.cmake.in b/cmake/templates/LeptonicaConfig.cmake.in
|
37 |
+
index 342c37d..506fb2a 100644
|
38 |
+
--- a/cmake/templates/LeptonicaConfig.cmake.in
|
39 |
+
+++ b/cmake/templates/LeptonicaConfig.cmake.in
|
40 |
+
@@ -19,6 +19,14 @@
|
41 |
+
# - Leptonica_VERSION_PATCH : Patch version part of Leptonica_VERSION: "@VERSION_PATCH@"
|
42 |
+
#
|
43 |
+
# ===================================================================================
|
44 |
+
+include(CMakeFindDependencyMacro)
|
45 |
+
+find_dependency(JPEG)
|
46 |
+
+find_dependency(ZLIB)
|
47 |
+
+find_dependency(PNG)
|
48 |
+
+find_dependency(TIFF)
|
49 |
+
+find_dependency(GIF)
|
50 |
+
+find_dependency(WebP)
|
51 |
+
+find_dependency(OpenJPEG)
|
52 |
+
|
53 |
+
include(${CMAKE_CURRENT_LIST_DIR}/LeptonicaTargets.cmake)
|
54 |
+
|
55 |
+
@@ -36,7 +44,8 @@ SET(Leptonica_VERSION_PATCH @VERSION_PATCH@)
|
56 |
+
# ======================================================
|
57 |
+
|
58 |
+
# Provide the include directories to the caller
|
59 |
+
-set(Leptonica_INCLUDE_DIRS "@INCLUDE_DIR@")
|
60 |
+
+get_filename_component(Leptonica_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/../../include" ABSOLUTE)
|
61 |
+
+list(APPEND Leptonica_INCLUDE_DIRS "${Leptonica_INCLUDE_DIRS}/leptonica")
|
62 |
+
|
63 |
+
# ====================================================================
|
64 |
+
# Link libraries:
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leptonica/portfile.cmake
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_from_github(
|
2 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
3 |
+
REPO DanBloomberg/leptonica
|
4 |
+
REF f4138265b390f1921b9891d6669674d3157887d8 # 1.82.0
|
5 |
+
SHA512 cd8c55454fc2cb4d23c2b3f01870e154766fa5a35c07b79d25c2d85dc2675dcb224d9be8a1cdcb7e9a0bd3c17e90141aa4084f67a311a1c327d7ac2439ba196a
|
6 |
+
HEAD_REF master
|
7 |
+
PATCHES
|
8 |
+
fix-CMakeDependency.patch
|
9 |
+
)
|
10 |
+
|
11 |
+
vcpkg_cmake_configure(
|
12 |
+
SOURCE_PATH "${SOURCE_PATH}"
|
13 |
+
OPTIONS
|
14 |
+
-DSW_BUILD=OFF
|
15 |
+
-DCMAKE_REQUIRE_FIND_PACKAGE_GIF=TRUE
|
16 |
+
-DCMAKE_REQUIRE_FIND_PACKAGE_JPEG=TRUE
|
17 |
+
-DCMAKE_REQUIRE_FIND_PACKAGE_PNG=TRUE
|
18 |
+
-DCMAKE_REQUIRE_FIND_PACKAGE_TIFF=TRUE
|
19 |
+
-DCMAKE_REQUIRE_FIND_PACKAGE_ZLIB=TRUE
|
20 |
+
)
|
21 |
+
|
22 |
+
vcpkg_cmake_install()
|
23 |
+
|
24 |
+
vcpkg_fixup_pkgconfig()
|
25 |
+
|
26 |
+
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/leptonica)
|
27 |
+
|
28 |
+
vcpkg_copy_pdbs()
|
29 |
+
|
30 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
31 |
+
|
32 |
+
file(INSTALL "${SOURCE_PATH}/leptonica-license.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leptonica/vcpkg.json
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "leptonica",
|
3 |
+
"version": "1.82.0",
|
4 |
+
"description": "An open source library containing software that is broadly useful for image processing and image analysis applications",
|
5 |
+
"homepage": "https://github.com/DanBloomberg/leptonica",
|
6 |
+
"license": null,
|
7 |
+
"dependencies": [
|
8 |
+
"giflib",
|
9 |
+
"libjpeg-turbo",
|
10 |
+
"libpng",
|
11 |
+
"libwebp",
|
12 |
+
"openjpeg",
|
13 |
+
"tiff",
|
14 |
+
{
|
15 |
+
"name": "vcpkg-cmake",
|
16 |
+
"host": true
|
17 |
+
},
|
18 |
+
{
|
19 |
+
"name": "vcpkg-cmake-config",
|
20 |
+
"host": true
|
21 |
+
},
|
22 |
+
"zlib"
|
23 |
+
]
|
24 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/create_package.patch
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
CMakeLists.txt | 8 +++++++-
|
2 |
+
1 file changed, 7 insertions(+), 1 deletion(-)
|
3 |
+
|
4 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
5 |
+
index e90fcdd..17c79e8 100644
|
6 |
+
--- a/CMakeLists.txt
|
7 |
+
+++ b/CMakeLists.txt
|
8 |
+
@@ -17,7 +17,7 @@ add_library(LercLib ${SOURCES})
|
9 |
+
target_link_libraries (LercLib)
|
10 |
+
|
11 |
+
install(
|
12 |
+
- TARGETS LercLib
|
13 |
+
+ TARGETS LercLib EXPORT LercTargets
|
14 |
+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
15 |
+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
16 |
+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
17 |
+
@@ -28,3 +28,9 @@ install(
|
18 |
+
FILES "include/Lerc_types.h" "include/Lerc_c_api.h"
|
19 |
+
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
20 |
+
)
|
21 |
+
+
|
22 |
+
+install(EXPORT LercTargets
|
23 |
+
+ FILE lercConfig.cmake
|
24 |
+
+ NAMESPACE Esri::
|
25 |
+
+ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/lerc"
|
26 |
+
+)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/enable_static_build.patch
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
CMakeLists.txt | 2 +-
|
2 |
+
1 file changed, 1 insertion(+), 1 deletion(-)
|
3 |
+
|
4 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
5 |
+
index d22ad11..e90fcdd 100644
|
6 |
+
--- a/CMakeLists.txt
|
7 |
+
+++ b/CMakeLists.txt
|
8 |
+
@@ -12,7 +12,7 @@ file(GLOB SOURCES
|
9 |
+
)
|
10 |
+
message(${SOURCES})
|
11 |
+
|
12 |
+
-add_library(LercLib SHARED ${SOURCES})
|
13 |
+
+add_library(LercLib ${SOURCES})
|
14 |
+
|
15 |
+
target_link_libraries (LercLib)
|
16 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/install_lib_to_archive_path.patch
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
CMakeLists.txt | 2 +-
|
2 |
+
1 file changed, 1 insertion(+), 1 deletion(-)
|
3 |
+
|
4 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
5 |
+
index ececeed..d22ad11 100644
|
6 |
+
--- a/CMakeLists.txt
|
7 |
+
+++ b/CMakeLists.txt
|
8 |
+
@@ -20,7 +20,7 @@ install(
|
9 |
+
TARGETS LercLib
|
10 |
+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
11 |
+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
12 |
+
- ARCHIVE DESTINATION ${CMAKE_INSTALL_BINDIR}
|
13 |
+
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
14 |
+
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
15 |
+
)
|
16 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/portfile.cmake
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_from_github(
|
2 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
3 |
+
REPO Esri/lerc
|
4 |
+
REF v2.2
|
5 |
+
SHA512 5ddf1e8f0c123d3c1329e980021e25e6ff9b79c96588115e5b48ba7637f0b2bf3ebb2ab6ebf94cfbde45ea1521f14405f669e23f0b74d9ae8f9b2cf80a908215
|
6 |
+
HEAD_REF master
|
7 |
+
PATCHES
|
8 |
+
"install_lib_to_archive_path.patch"
|
9 |
+
"enable_static_build.patch"
|
10 |
+
"create_package.patch"
|
11 |
+
)
|
12 |
+
|
13 |
+
vcpkg_configure_cmake(
|
14 |
+
SOURCE_PATH ${SOURCE_PATH}
|
15 |
+
PREFER_NINJA
|
16 |
+
)
|
17 |
+
|
18 |
+
vcpkg_install_cmake()
|
19 |
+
vcpkg_fixup_cmake_targets()
|
20 |
+
|
21 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
22 |
+
|
23 |
+
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
24 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lerc/vcpkg.json
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lerc",
|
3 |
+
"version-string": "2.2",
|
4 |
+
"port-version": 2,
|
5 |
+
"description": "An open-source image or raster format which supports rapid encoding and decoding for any pixel type",
|
6 |
+
"homepage": "https://github.com/Esri/lerc"
|
7 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lest/portfile.cmake
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_from_github(
|
2 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
3 |
+
REPO martinmoene/lest
|
4 |
+
REF v1.35.1
|
5 |
+
SHA512 06b786cbca37cb4d20737d040176bf34398090d566310b88558b788804d8b832c682f1814f5c68ef11192243dbde5643e73b78be4fb1407b831bcde43adb002c
|
6 |
+
)
|
7 |
+
|
8 |
+
file(INSTALL ${SOURCE_PATH}/include/ DESTINATION ${CURRENT_PACKAGES_DIR}/include)
|
9 |
+
file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/lest RENAME copyright)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/lest/vcpkg.json
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "lest",
|
3 |
+
"version-string": "1.35.1",
|
4 |
+
"port-version": 2,
|
5 |
+
"description": "A modern, C++11-native, single-file header-only, tiny framework for unit-tests, TDD and BDD (includes C++98 variant)",
|
6 |
+
"homepage": "https://github.com/martinmoene/lest"
|
7 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/fix-dependencies.patch
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
2 |
+
index 98b87dc..76d2e9b 100644
|
3 |
+
--- a/CMakeLists.txt
|
4 |
+
+++ b/CMakeLists.txt
|
5 |
+
@@ -35,8 +35,14 @@ include(CheckIncludeFile)
|
6 |
+
check_include_file("unistd.h" HAVE_UNISTD_H)
|
7 |
+
|
8 |
+
include(CheckLibraryExists)
|
9 |
+
-check_library_exists(crc32c crc32c_value "" HAVE_CRC32C)
|
10 |
+
-check_library_exists(snappy snappy_compress "" HAVE_SNAPPY)
|
11 |
+
+if (WITH_CRC32C)
|
12 |
+
+ find_package(Crc32c CONFIG REQUIRED)
|
13 |
+
+ set(HAVE_CRC32C 1)
|
14 |
+
+endif()
|
15 |
+
+if (WITH_SNAPPY)
|
16 |
+
+ find_package(Snappy CONFIG REQUIRED)
|
17 |
+
+ set(HAVE_SNAPPY 1)
|
18 |
+
+endif()
|
19 |
+
check_library_exists(tcmalloc malloc "" HAVE_TCMALLOC)
|
20 |
+
|
21 |
+
include(CheckCXXSymbolExists)
|
22 |
+
@@ -246,10 +252,10 @@ if(HAVE_CLANG_THREAD_SAFETY)
|
23 |
+
endif(HAVE_CLANG_THREAD_SAFETY)
|
24 |
+
|
25 |
+
if(HAVE_CRC32C)
|
26 |
+
- target_link_libraries(leveldb crc32c)
|
27 |
+
+ target_link_libraries(leveldb Crc32c::crc32c)
|
28 |
+
endif(HAVE_CRC32C)
|
29 |
+
if(HAVE_SNAPPY)
|
30 |
+
- target_link_libraries(leveldb snappy)
|
31 |
+
+ target_link_libraries(leveldb Snappy::snappy)
|
32 |
+
endif(HAVE_SNAPPY)
|
33 |
+
if(HAVE_TCMALLOC)
|
34 |
+
target_link_libraries(leveldb tcmalloc)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/fix_config.patch
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
2 |
+
index 1409c06..98b87dc 100644
|
3 |
+
--- a/CMakeLists.txt
|
4 |
+
+++ b/CMakeLists.txt
|
5 |
+
@@ -437,6 +437,12 @@ if(LEVELDB_INSTALL)
|
6 |
+
"${PROJECT_BINARY_DIR}/leveldbConfigVersion.cmake"
|
7 |
+
COMPATIBILITY SameMajorVersion
|
8 |
+
)
|
9 |
+
+ configure_package_config_file(${PROJECT_SOURCE_DIR}/cmake/leveldbConfig.cmake.in
|
10 |
+
+ leveldbConfig.cmake
|
11 |
+
+ INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/leveldb
|
12 |
+
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
|
13 |
+
+ PATH_VARS CMAKE_INSTALL_INCLUDEDIR
|
14 |
+
+ )
|
15 |
+
install(
|
16 |
+
EXPORT leveldbTargets
|
17 |
+
NAMESPACE leveldb::
|
18 |
+
@@ -444,7 +450,7 @@ if(LEVELDB_INSTALL)
|
19 |
+
)
|
20 |
+
install(
|
21 |
+
FILES
|
22 |
+
- "${PROJECT_SOURCE_DIR}/cmake/leveldbConfig.cmake"
|
23 |
+
+ "${PROJECT_BINARY_DIR}/leveldbConfig.cmake"
|
24 |
+
"${PROJECT_BINARY_DIR}/leveldbConfigVersion.cmake"
|
25 |
+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/leveldb"
|
26 |
+
)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/leveldbConfig.cmake.in
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
@PACKAGE_INIT@
|
2 |
+
include(CMakeFindDependencyMacro)
|
3 |
+
|
4 |
+
set_and_check(leveldb_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@")
|
5 |
+
find_dependency(Threads)
|
6 |
+
|
7 |
+
if (@WITH_CRC32C@)
|
8 |
+
find_dependency(Crc32c CONFIG)
|
9 |
+
endif()
|
10 |
+
if (@WITH_SNAPPY@)
|
11 |
+
find_dependency(Snappy CONFIG)
|
12 |
+
endif()
|
13 |
+
|
14 |
+
include("${CMAKE_CURRENT_LIST_DIR}/leveldbTargets.cmake")
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/portfile.cmake
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
2 |
+
|
3 |
+
vcpkg_from_github(
|
4 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
5 |
+
REPO "google/leveldb"
|
6 |
+
REF 1.22
|
7 |
+
SHA512 f9bbf5f466e7f707b94e19261762319ea9f65d41911690e84f59098551e2e69beccf756a414d705ade74ee96fd979bdb8b94c171c6f2cc83873cbd4a9380dbab
|
8 |
+
HEAD_REF master
|
9 |
+
PATCHES
|
10 |
+
fix_config.patch
|
11 |
+
fix-dependencies.patch
|
12 |
+
)
|
13 |
+
|
14 |
+
file(COPY "${CURRENT_PORT_DIR}/leveldbConfig.cmake.in" DESTINATION "${SOURCE_PATH}/cmake")
|
15 |
+
|
16 |
+
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
17 |
+
FEATURES
|
18 |
+
crc32c WITH_CRC32C
|
19 |
+
snappy WITH_SNAPPY
|
20 |
+
)
|
21 |
+
|
22 |
+
vcpkg_cmake_configure(
|
23 |
+
SOURCE_PATH "${SOURCE_PATH}"
|
24 |
+
OPTIONS ${FEATURE_OPTIONS}
|
25 |
+
OPTIONS_DEBUG -DINSTALL_HEADERS=OFF
|
26 |
+
)
|
27 |
+
|
28 |
+
vcpkg_cmake_install()
|
29 |
+
|
30 |
+
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/${PORT})
|
31 |
+
|
32 |
+
|
33 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
34 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
|
35 |
+
|
36 |
+
# Handle copyright
|
37 |
+
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
38 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/leveldb/vcpkg.json
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "leveldb",
|
3 |
+
"version": "1.22",
|
4 |
+
"port-version": 5,
|
5 |
+
"description": "LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.",
|
6 |
+
"homepage": "https://github.com/google/leveldb",
|
7 |
+
"license": "BSD-3-Clause",
|
8 |
+
"supports": "!uwp",
|
9 |
+
"dependencies": [
|
10 |
+
{
|
11 |
+
"name": "vcpkg-cmake",
|
12 |
+
"host": true
|
13 |
+
},
|
14 |
+
{
|
15 |
+
"name": "vcpkg-cmake-config",
|
16 |
+
"host": true
|
17 |
+
}
|
18 |
+
],
|
19 |
+
"features": {
|
20 |
+
"crc32c": {
|
21 |
+
"description": "Build with crc32c",
|
22 |
+
"dependencies": [
|
23 |
+
"crc32c"
|
24 |
+
]
|
25 |
+
},
|
26 |
+
"snappy": {
|
27 |
+
"description": "Build with snappy",
|
28 |
+
"dependencies": [
|
29 |
+
"snappy"
|
30 |
+
]
|
31 |
+
}
|
32 |
+
}
|
33 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/levmar/add-install.patch
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
2 |
+
index cc6789f..d2757f9 100644
|
3 |
+
--- a/CMakeLists.txt
|
4 |
+
+++ b/CMakeLists.txt
|
5 |
+
@@ -95,3 +95,6 @@ IF(BUILD_DEMO)
|
6 |
+
ENDIF(BUILD_DEMO)
|
7 |
+
|
8 |
+
#SUBDIRS(matlab)
|
9 |
+
+
|
10 |
+
+install(TARGETS levmar LIBRARY DESTINATION "lib/")
|
11 |
+
+install(FILES "${CMAKE_SOURCE_DIR}/levmar.h" DESTINATION "include/levmar/")
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/levmar/portfile.cmake
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
vcpkg_download_distfile(ARCHIVE
|
2 |
+
URLS "http://users.ics.forth.gr/~lourakis/levmar/levmar-2.6.tgz"
|
3 |
+
FILENAME "levmar-2.6.tgz"
|
4 |
+
SHA512 5b4c64b63be9b29d6ad2df435af86cd2c2e3216313378561a670ac6a392a51bbf1951e96c6b1afb77c570f23dd8e194017808e46929fec2d8d9a7fe6cf37022b
|
5 |
+
)
|
6 |
+
|
7 |
+
vcpkg_extract_source_archive_ex(
|
8 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
9 |
+
ARCHIVE ${ARCHIVE}
|
10 |
+
PATCHES add-install.patch # patch just adding the install commands to original CMakeLists.txt
|
11 |
+
)
|
12 |
+
|
13 |
+
vcpkg_configure_cmake(
|
14 |
+
SOURCE_PATH ${SOURCE_PATH}
|
15 |
+
PREFER_NINJA
|
16 |
+
DISABLE_PARALLEL_CONFIGURE
|
17 |
+
OPTIONS
|
18 |
+
-DHAVE_LAPACK=OFF
|
19 |
+
-DHAVE_PLASMA=OFF
|
20 |
+
-DBUILD_DEMO=OFF
|
21 |
+
)
|
22 |
+
|
23 |
+
vcpkg_install_cmake()
|
24 |
+
|
25 |
+
# Handle copyright
|
26 |
+
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
27 |
+
|
28 |
+
# Handle duplicated debug includes
|
29 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/levmar/vcpkg.json
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "levmar",
|
3 |
+
"version": "2.6",
|
4 |
+
"port-version": 1,
|
5 |
+
"description": "Levenberg-Marquardt nonlinear least squares optimization algorithm",
|
6 |
+
"homepage": "http://users.ics.forth.gr/~lourakis/levmar/",
|
7 |
+
"supports": "windows & !uwp"
|
8 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaaplus/fix-cmakelists.patch
ADDED
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
2 |
+
index 9bb8ea3..c445c4b 100644
|
3 |
+
--- a/CMakeLists.txt
|
4 |
+
+++ b/CMakeLists.txt
|
5 |
+
@@ -5,6 +5,7 @@ cmake_minimum_required(VERSION 3.8)
|
6 |
+
SET(CMAKE_CXX_STANDARD 17)
|
7 |
+
SET(CMAKE_CXX_STANDARD_REQUIRED ON)
|
8 |
+
|
9 |
+
+option(BUILD_TOOLS "Build libaaplus tools" OFF)
|
10 |
+
#-----------------------------------------------------------------------------
|
11 |
+
# Output directories.
|
12 |
+
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin CACHE PATH
|
13 |
+
@@ -261,18 +262,66 @@ SET ( SRCS
|
14 |
+
#-----------------------------------------------------------------------------
|
15 |
+
# Executables.
|
16 |
+
#-----------------------------------------------------------------------------
|
17 |
+
+if(BUILD_TOOLS)
|
18 |
+
ADD_EXECUTABLE(AATest ${SRCS} )
|
19 |
+
-
|
20 |
+
+endif()
|
21 |
+
#-----------------------------------------------------------------------------
|
22 |
+
# Libraries.
|
23 |
+
+if(NOT BUILD_SHARED_LIBS)
|
24 |
+
ADD_LIBRARY(aaplus-static STATIC ${SRCS_LIB} ${INCS})
|
25 |
+
SET_TARGET_PROPERTIES(aaplus-static PROPERTIES OUTPUT_NAME "aaplus")
|
26 |
+
-
|
27 |
+
+target_include_directories(aaplus-static PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}> $<INSTALL_INTERFACE:include/aaplus>)
|
28 |
+
+else()
|
29 |
+
ADD_LIBRARY(aaplus-shared SHARED ${SRCS_LIB} ${INCS})
|
30 |
+
SET_TARGET_PROPERTIES(aaplus-shared PROPERTIES OUTPUT_NAME "aaplus")
|
31 |
+
+target_include_directories(aaplus-shared PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}> $<INSTALL_INTERFACE:include/aaplus>)
|
32 |
+
+endif()
|
33 |
+
+
|
34 |
+
+if (MSVC AND BUILD_SHARED_LIBS)
|
35 |
+
+target_compile_definitions(aaplus-shared
|
36 |
+
+ PRIVATE
|
37 |
+
+ -DAAPLUS_EXT_CLASS\=__declspec\(dllexport\)
|
38 |
+
+)
|
39 |
+
+endif (MSVC AND BUILD_SHARED_LIBS)
|
40 |
+
+
|
41 |
+
+if(BUILD_SHARED_LIBS)
|
42 |
+
+ install(
|
43 |
+
+ TARGETS aaplus-shared
|
44 |
+
+ EXPORT aaplus
|
45 |
+
+ ARCHIVE DESTINATION lib
|
46 |
+
+ LIBRARY DESTINATION lib
|
47 |
+
+ RUNTIME DESTINATION bin
|
48 |
+
+ )
|
49 |
+
+else()
|
50 |
+
+ install(
|
51 |
+
+ TARGETS aaplus-static
|
52 |
+
+ EXPORT aaplus
|
53 |
+
+ ARCHIVE DESTINATION lib
|
54 |
+
+ LIBRARY DESTINATION lib
|
55 |
+
+ RUNTIME DESTINATION bin
|
56 |
+
+ )
|
57 |
+
+endif()
|
58 |
+
|
59 |
+
-install(TARGETS aaplus-shared aaplus-static
|
60 |
+
- DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" )
|
61 |
+
+if(BUILD_TOOLS)
|
62 |
+
+ if(BUILD_SHARED_LIBS)
|
63 |
+
+ TARGET_LINK_LIBRARIES(AATest aaplus-shared)
|
64 |
+
+ if(MSVC)
|
65 |
+
+ target_compile_definitions(AATest
|
66 |
+
+ PUBLIC
|
67 |
+
+ -DAAPLUS_EXT_CLASS\=__declspec\(dllimport\)
|
68 |
+
+ )
|
69 |
+
+ endif()
|
70 |
+
+
|
71 |
+
+ else()
|
72 |
+
+ TARGET_LINK_LIBRARIES(AATest aaplus-static)
|
73 |
+
+ endif()
|
74 |
+
+endif()
|
75 |
+
|
76 |
+
-TARGET_LINK_LIBRARIES(AATest aaplus-static)
|
77 |
+
+install(
|
78 |
+
+ EXPORT aaplus
|
79 |
+
+ DESTINATION share/aaplus
|
80 |
+
+ FILE aaplusConfig.cmake
|
81 |
+
+ NAMESPACE aaplus::
|
82 |
+
+)
|
83 |
+
|
84 |
+
+install(FILES ${INCS} DESTINATION include/aaplus)
|
85 |
+
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaaplus/portfile.cmake
ADDED
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
set(VERSION 2.36)
|
2 |
+
|
3 |
+
vcpkg_download_distfile(
|
4 |
+
ARCHIVE_FILE
|
5 |
+
URLS "http://www.naughter.com/download/aaplus_v${VERSION}.zip"
|
6 |
+
FILENAME "aaplus_v${VERSION}.zip"
|
7 |
+
SHA512 a7abf20feb49df00b95be987809a3dc8df3e9ff706dd5a873ecfdd695af125f858264e092b6b856e83685e9eb46fd46520cf09dfae892c32cbb71f925ba17b86
|
8 |
+
)
|
9 |
+
|
10 |
+
vcpkg_extract_source_archive_ex(
|
11 |
+
OUT_SOURCE_PATH SOURCE_PATH
|
12 |
+
ARCHIVE ${ARCHIVE_FILE}
|
13 |
+
REF ${VERSION}
|
14 |
+
NO_REMOVE_ONE_LEVEL
|
15 |
+
PATCHES
|
16 |
+
fix-cmakelists.patch
|
17 |
+
)
|
18 |
+
|
19 |
+
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
20 |
+
FEATURES
|
21 |
+
tools BUILD_TOOLS
|
22 |
+
)
|
23 |
+
|
24 |
+
vcpkg_cmake_configure(
|
25 |
+
SOURCE_PATH "${SOURCE_PATH}"
|
26 |
+
OPTIONS ${FEATURE_OPTIONS}
|
27 |
+
)
|
28 |
+
|
29 |
+
vcpkg_cmake_install()
|
30 |
+
vcpkg_copy_pdbs()
|
31 |
+
|
32 |
+
vcpkg_cmake_config_fixup(PACKAGE_NAME aaplus CONFIG_PATH share/aaplus)
|
33 |
+
|
34 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
35 |
+
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
|
36 |
+
|
37 |
+
file(INSTALL "${SOURCE_PATH}/AA+.htm" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaaplus/vcpkg.json
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "libaaplus",
|
3 |
+
"version": "2.36",
|
4 |
+
"description": "libaaplus is an astronomical computations library by naughter software",
|
5 |
+
"homepage": "http://www.naughter.com/aa.html",
|
6 |
+
"dependencies": [
|
7 |
+
{
|
8 |
+
"name": "vcpkg-cmake",
|
9 |
+
"host": true
|
10 |
+
},
|
11 |
+
{
|
12 |
+
"name": "vcpkg-cmake-config",
|
13 |
+
"host": true
|
14 |
+
}
|
15 |
+
],
|
16 |
+
"features": {
|
17 |
+
"tools": {
|
18 |
+
"description": "Build libaaplus tools"
|
19 |
+
}
|
20 |
+
}
|
21 |
+
}
|
third-party/DPVO/Pangolin/scripts/vcpkg/ports/libaiff/allow_utf_16_filename.patch
ADDED
@@ -0,0 +1,214 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
diff --git a/libaiff.c b/libaiff.c
|
2 |
+
index d0ad40d..e266802 100644
|
3 |
+
--- a/libaiff.c
|
4 |
+
+++ b/libaiff.c
|
5 |
+
@@ -44,6 +44,8 @@ static struct decoder* decoders[] = {
|
6 |
+
|
7 |
+
static AIFF_Ref AIFF_ReadOpen (const char *, int);
|
8 |
+
static AIFF_Ref AIFF_WriteOpen (const char *, int);
|
9 |
+
+static AIFF_Ref AIFF_ReadOpenW (const wchar_t*, int);
|
10 |
+
+static AIFF_Ref AIFF_WriteOpenW (const wchar_t*, int);
|
11 |
+
static void AIFF_ReadClose (AIFF_Ref);
|
12 |
+
static int AIFF_WriteClose (AIFF_Ref);
|
13 |
+
static void* InitBuffer (AIFF_Ref, size_t);
|
14 |
+
@@ -53,6 +55,21 @@ static int Prepare (AIFF_Ref);
|
15 |
+
static void Unprepare (AIFF_Ref);
|
16 |
+
static struct decoder* FindDecoder (IFFType);
|
17 |
+
|
18 |
+
+#ifdef _WIN32
|
19 |
+
+AIFF_Ref
|
20 |
+
+AIFF_OpenFileW(const wchar_t *file, int flags)
|
21 |
+
+{
|
22 |
+
+ AIFF_Ref ref = NULL;
|
23 |
+
+
|
24 |
+
+ if (flags & F_RDONLY) {
|
25 |
+
+ ref = AIFF_ReadOpenW(file, flags);
|
26 |
+
+ } else if (flags & F_WRONLY) {
|
27 |
+
+ ref = AIFF_WriteOpenW(file, flags);
|
28 |
+
+ }
|
29 |
+
+
|
30 |
+
+ return ref;
|
31 |
+
+}
|
32 |
+
+#endif
|
33 |
+
AIFF_Ref
|
34 |
+
AIFF_OpenFile(const char *file, int flags)
|
35 |
+
{
|
36 |
+
@@ -86,6 +103,76 @@ AIFF_CloseFile(AIFF_Ref ref)
|
37 |
+
return r;
|
38 |
+
}
|
39 |
+
|
40 |
+
+#ifdef _WIN32
|
41 |
+
+static AIFF_Ref
|
42 |
+
+AIFF_ReadOpenW(const wchar_t *file, int flags)
|
43 |
+
+{
|
44 |
+
+ AIFF_Ref r;
|
45 |
+
+ IFFHeader hdr;
|
46 |
+
+
|
47 |
+
+ r = malloc(kAIFFRefSize);
|
48 |
+
+ if (!r) {
|
49 |
+
+ return NULL;
|
50 |
+
+ }
|
51 |
+
+ r->fd = _wfopen(file, L"rb");
|
52 |
+
+ if (r->fd == NULL) {
|
53 |
+
+ free(r);
|
54 |
+
+ return NULL;
|
55 |
+
+ }
|
56 |
+
+ r->flags = F_RDONLY | flags;
|
57 |
+
+ if (fread(&hdr, 1, 4, r->fd) < 4) {
|
58 |
+
+ fclose(r->fd);
|
59 |
+
+ free(r);
|
60 |
+
+ return NULL;
|
61 |
+
+ }
|
62 |
+
+ switch (hdr.hid) {
|
63 |
+
+ case AIFF_TYPE_IFF:
|
64 |
+
+ /* Continue reading the IFF header */
|
65 |
+
+ if (fread(&(hdr.len), 1, 8, r->fd) < 8) {
|
66 |
+
+ fclose(r->fd);
|
67 |
+
+ free(r);
|
68 |
+
+ return NULL;
|
69 |
+
+ }
|
70 |
+
+ if (hdr.len == 0) {
|
71 |
+
+ fclose(r->fd);
|
72 |
+
+ free(r);
|
73 |
+
+ return NULL;
|
74 |
+
+ }
|
75 |
+
+ /*
|
76 |
+
+ * Check the format type (AIFF or AIFC)
|
77 |
+
+ */
|
78 |
+
+ r->format = hdr.fid;
|
79 |
+
+ switch (r->format) {
|
80 |
+
+ case AIFF_TYPE_AIFF:
|
81 |
+
+ case AIFF_TYPE_AIFC:
|
82 |
+
+ break;
|
83 |
+
+ default:
|
84 |
+
+ fclose(r->fd);
|
85 |
+
+ free(r);
|
86 |
+
+ return NULL;
|
87 |
+
+ }
|
88 |
+
+
|
89 |
+
+ if (init_aifx(r) < 1) {
|
90 |
+
+ fclose(r->fd);
|
91 |
+
+ free(r);
|
92 |
+
+ return NULL;
|
93 |
+
+ }
|
94 |
+
+ break;
|
95 |
+
+ default:
|
96 |
+
+ fclose(r->fd);
|
97 |
+
+ free(r);
|
98 |
+
+ return NULL;
|
99 |
+
+ }
|
100 |
+
+
|
101 |
+
+ r->stat = 0;
|
102 |
+
+ r->buffer = NULL;
|
103 |
+
+ r->buflen = 0;
|
104 |
+
+
|
105 |
+
+ return r;
|
106 |
+
+}
|
107 |
+
+
|
108 |
+
+#endif
|
109 |
+
+
|
110 |
+
static AIFF_Ref
|
111 |
+
AIFF_ReadOpen(const char *file, int flags)
|
112 |
+
{
|
113 |
+
@@ -450,6 +537,89 @@ AIFF_ReadClose(AIFF_Ref r)
|
114 |
+
return;
|
115 |
+
}
|
116 |
+
|
117 |
+
+#ifdef WIN32
|
118 |
+
+static AIFF_Ref
|
119 |
+
+AIFF_WriteOpenW(const wchar_t *file, int flags)
|
120 |
+
+{
|
121 |
+
+ AIFF_Ref w;
|
122 |
+
+ IFFHeader hdr;
|
123 |
+
+ ASSERT(sizeof(IFFHeader) == 12);
|
124 |
+
+
|
125 |
+
+ w = malloc(kAIFFRefSize);
|
126 |
+
+ if (!w) {
|
127 |
+
+err0:
|
128 |
+
+ return NULL;
|
129 |
+
+ }
|
130 |
+
+
|
131 |
+
+ /*
|
132 |
+
+ * Simultaneous open for reading & writing
|
133 |
+
+ */
|
134 |
+
+ w->fd = _wfopen(file, L"w+b");
|
135 |
+
+ if (w->fd == NULL) {
|
136 |
+
+err1:
|
137 |
+
+ free(w);
|
138 |
+
+ goto err0;
|
139 |
+
+ }
|
140 |
+
+ hdr.hid = ARRANGE_BE32(AIFF_FORM);
|
141 |
+
+ w->len = 4;
|
142 |
+
+ hdr.len = ARRANGE_BE32(4);
|
143 |
+
+ if (flags & F_AIFC)
|
144 |
+
+ hdr.fid = ARRANGE_BE32(AIFF_AIFC);
|
145 |
+
+ else
|
146 |
+
+ hdr.fid = ARRANGE_BE32(AIFF_AIFF);
|
147 |
+
+
|
148 |
+
+ if (fwrite(&hdr, 1, 12, w->fd) < 12) {
|
149 |
+
+err2:
|
150 |
+
+ fclose(w->fd);
|
151 |
+
+ goto err1;
|
152 |
+
+ }
|
153 |
+
+ w->stat = 0;
|
154 |
+
+ w->segmentSize = 0;
|
155 |
+
+ w->buffer = NULL;
|
156 |
+
+ w->buflen = 0;
|
157 |
+
+ w->tics = 0;
|
158 |
+
+
|
159 |
+
+ /*
|
160 |
+
+ * If writing AIFF-C, write the required FVER chunk
|
161 |
+
+ */
|
162 |
+
+ if (flags & F_AIFC) {
|
163 |
+
+ IFFChunk chk;
|
164 |
+
+ uint32_t vers;
|
165 |
+
+ ASSERT(sizeof(IFFChunk) == 8);
|
166 |
+
+
|
167 |
+
+ chk.id = ARRANGE_BE32(AIFF_FVER);
|
168 |
+
+ chk.len = ARRANGE_BE32(4);
|
169 |
+
+ vers = ARRANGE_BE32(AIFC_STD_DRAFT_082691);
|
170 |
+
+
|
171 |
+
+ if (fwrite(&chk, 1, 8, w->fd) < 8 ||
|
172 |
+
+ fwrite(&vers, 1, 4, w->fd) < 4) {
|
173 |
+
+ goto err2;
|
174 |
+
+ }
|
175 |
+
+
|
176 |
+
+ w->len += 12;
|
177 |
+
+
|
178 |
+
+ /*
|
179 |
+
+ * If no endianness specified for AIFF-C,
|
180 |
+
+ * default to big endian
|
181 |
+
+ */
|
182 |
+
+ if (!(flags & (LPCM_LTE_ENDIAN | LPCM_BIG_ENDIAN))) {
|
183 |
+
+ flags |= LPCM_BIG_ENDIAN;
|
184 |
+
+ }
|
185 |
+
+ } else {
|
186 |
+
+ /*
|
187 |
+
+ * If writing regular AIFF, make sure we
|
188 |
+
+ * write big-endian data
|
189 |
+
+ */
|
190 |
+
+ flags &= ~LPCM_LTE_ENDIAN;
|
191 |
+
+ flags |= LPCM_BIG_ENDIAN;
|
192 |
+
+ }
|
193 |
+
+
|
194 |
+
+ w->flags = F_WRONLY | flags;
|
195 |
+
+
|
196 |
+
+ return w;
|
197 |
+
+}
|
198 |
+
+#endif
|
199 |
+
+
|
200 |
+
static AIFF_Ref
|
201 |
+
AIFF_WriteOpen(const char *file, int flags)
|
202 |
+
{
|
203 |
+
diff --git a/libaiff/libaiff.h b/libaiff/libaiff.h
|
204 |
+
index 56fc77f..e1940a5 100644
|
205 |
+
--- a/libaiff/libaiff.h
|
206 |
+
+++ b/libaiff/libaiff.h
|
207 |
+
@@ -165,6 +165,7 @@ typedef struct s_Instrument Instrument ;
|
208 |
+
|
209 |
+
/* == Function prototypes == */
|
210 |
+
AIFF_Ref AIFF_OpenFile(const char *, int) ;
|
211 |
+
+AIFF_Ref AIFF_OpenFileW(const wchar_t *, int) ;
|
212 |
+
int AIFF_CloseFile(AIFF_Ref) ;
|
213 |
+
char* AIFF_GetAttribute(AIFF_Ref,IFFType) ;
|
214 |
+
int AIFF_GetInstrumentData(AIFF_Ref,Instrument*) ;
|