pyurd-native 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pyurd_native-0.1.0/PKG-INFO +26 -0
- pyurd_native-0.1.0/native/CMakeLists.txt +74 -0
- pyurd_native-0.1.0/native/CORRESPONDING_SOURCE.md +15 -0
- pyurd_native-0.1.0/native/LICENSE +674 -0
- pyurd_native-0.1.0/native/README.md +15 -0
- pyurd_native-0.1.0/native/SOURCES.json +92 -0
- pyurd_native-0.1.0/native/argparse/CMakeLists.txt +35 -0
- pyurd_native-0.1.0/native/argparse/licenses/LICENSE +7 -0
- pyurd_native-0.1.0/native/benchmark/CMakeLists.txt +44 -0
- pyurd_native-0.1.0/native/benchmark/licenses/LICENSE +202 -0
- pyurd_native-0.1.0/native/boost/CMakeLists.txt +44 -0
- pyurd_native-0.1.0/native/boost/licenses/LICENSE_1_0.txt +23 -0
- pyurd_native-0.1.0/native/cista/CMakeLists.txt +47 -0
- pyurd_native-0.1.0/native/cista/licenses/LICENSE +19 -0
- pyurd_native-0.1.0/native/fmt/CMakeLists.txt +34 -0
- pyurd_native-0.1.0/native/fmt/licenses/LICENSE +20 -0
- pyurd_native-0.1.0/native/googletest/CMakeLists.txt +41 -0
- pyurd_native-0.1.0/native/googletest/licenses/LICENSE +28 -0
- pyurd_native-0.1.0/native/gtl/CMakeLists.txt +56 -0
- pyurd_native-0.1.0/native/gtl/clear-empty-node.patch +23 -0
- pyurd_native-0.1.0/native/gtl/debug-access-trait.patch +23 -0
- pyurd_native-0.1.0/native/gtl/licenses/LICENSE +201 -0
- pyurd_native-0.1.0/native/gtl/licenses/license_folly +200 -0
- pyurd_native-0.1.0/native/gtl/licenses/license_lamerman +30 -0
- pyurd_native-0.1.0/native/gtl/package/CMakeLists.txt +38 -0
- pyurd_native-0.1.0/native/gtl/package/gtlConfig.cmake.in +3 -0
- pyurd_native-0.1.0/native/gtl/settings-struct.patch +83 -0
- pyurd_native-0.1.0/native/icu/CMakeLists.txt +40 -0
- pyurd_native-0.1.0/native/mpich/CMakeLists.txt +76 -0
- pyurd_native-0.1.0/native/mpich/licenses/COPYRIGHT +58 -0
- pyurd_native-0.1.0/native/mpich/licenses/LICENSE.json-c +42 -0
- pyurd_native-0.1.0/native/mpich/licenses/LICENSE.libfabric +379 -0
- pyurd_native-0.1.0/native/mpich/licenses/THIRD_PARTY_NOTICES.libfabric +146 -0
- pyurd_native-0.1.0/native/mpich/patch_wrappers.cmake +35 -0
- pyurd_native-0.1.0/native/nanobind/CMakeLists.txt +43 -0
- pyurd_native-0.1.0/native/nanobind/licenses/LICENSE +26 -0
- pyurd_native-0.1.0/native/nanobind/licenses/robin_map/LICENSE +21 -0
- pyurd_native-0.1.0/native/nauty/CMakeLists.txt +57 -0
- pyurd_native-0.1.0/native/nauty/licenses/COPYRIGHT +44 -0
- pyurd_native-0.1.0/native/nauty/licenses/LICENSE-2.0.txt +202 -0
- pyurd_native-0.1.0/native/nauty/package/CMakeLists.txt +27 -0
- pyurd_native-0.1.0/native/nauty/package/NautyConfig.cmake.in +8 -0
- pyurd_native-0.1.0/native/oneTBB/CMakeLists.txt +44 -0
- pyurd_native-0.1.0/native/oneTBB/licenses/LICENSE.txt +201 -0
- pyurd_native-0.1.0/native/oneTBB/licenses/third-party-programs.txt +198 -0
- pyurd_native-0.1.0/native/source_manifest.cmake +30 -0
- pyurd_native-0.1.0/native/tomlplusplus/CMakeLists.txt +22 -0
- pyurd_native-0.1.0/native/tomlplusplus/licenses/LICENSE +16 -0
- pyurd_native-0.1.0/native/wheel/CMakeLists.txt +146 -0
- pyurd_native-0.1.0/pyproject.toml +62 -0
- pyurd_native-0.1.0/pyurd_native_build_backend.py +111 -0
- pyurd_native-0.1.0/src/pyurd_native/__init__.py +45 -0
- pyurd_native-0.1.0/src/pyurd_native/__main__.py +44 -0
- pyurd_native-0.1.0/src/pyurd_native/py.typed +0 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: pyurd-native
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: The native dependencies of urd and of Dominik Drexler's planning projects, as one prefix
|
|
5
|
+
Author-Email: Dominik Drexler <dominik.drexler@liu.se>
|
|
6
|
+
License-Expression: GPL-3.0-or-later
|
|
7
|
+
License-File: native/LICENSE
|
|
8
|
+
Project-URL: Homepage, https://github.com/planning-and-learning/urd
|
|
9
|
+
Requires-Python: >=3.11
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
|
|
12
|
+
# pyurd-native
|
|
13
|
+
|
|
14
|
+
The native dependencies of [urd](https://github.com/planning-and-learning/urd) and of the planning libraries built
|
|
15
|
+
on it (yggdrasil, loki, tyr, runir), as one prefix in a platform wheel: Boost, ICU, MPICH, oneTBB, nauty, gtl, cista,
|
|
16
|
+
fmt, nanobind, argparse, toml++, googletest and benchmark, in the versions `native/SOURCES.json` pins.
|
|
17
|
+
|
|
18
|
+
`pyurd` (urd's headers and CMake package, one wheel for every platform) requires an exact version of it, so it is
|
|
19
|
+
not installed on its own. It is released only when a pinned dependency changes.
|
|
20
|
+
|
|
21
|
+
```console
|
|
22
|
+
python -m pyurd_native --prefix # the prefix to put on CMAKE_PREFIX_PATH
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
The licenses of the bundled libraries are under `share/licenses/` of that prefix; `share/CORRESPONDING_SOURCE.md`
|
|
26
|
+
says where their sources are.
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Builds and installs the dependencies listed in SOURCES.json into CMAKE_INSTALL_PREFIX: what pyurd-native ships, and
|
|
2
|
+
# what urd, yggdrasil and the libraries above it build against (URD_NATIVE_PREFIX).
|
|
3
|
+
|
|
4
|
+
cmake_minimum_required(VERSION 3.21)
|
|
5
|
+
|
|
6
|
+
project(urd_native_sources)
|
|
7
|
+
|
|
8
|
+
include(GNUInstallDirs)
|
|
9
|
+
include(ProcessorCount)
|
|
10
|
+
include("${CMAKE_CURRENT_LIST_DIR}/source_manifest.cmake")
|
|
11
|
+
|
|
12
|
+
# Build configuration
|
|
13
|
+
|
|
14
|
+
if(NOT DEFINED URD_JOBS)
|
|
15
|
+
ProcessorCount(URD_JOBS)
|
|
16
|
+
endif()
|
|
17
|
+
if(NOT URD_JOBS)
|
|
18
|
+
set(URD_JOBS 1)
|
|
19
|
+
endif()
|
|
20
|
+
|
|
21
|
+
set(DEFAULT_BUILD_TYPE "Release")
|
|
22
|
+
if(NOT CMAKE_BUILD_TYPE)
|
|
23
|
+
set(
|
|
24
|
+
CMAKE_BUILD_TYPE
|
|
25
|
+
${DEFAULT_BUILD_TYPE}
|
|
26
|
+
CACHE STRING
|
|
27
|
+
"Choose the type of build, options are: Debug Release"
|
|
28
|
+
FORCE
|
|
29
|
+
)
|
|
30
|
+
endif()
|
|
31
|
+
|
|
32
|
+
set(BUILD_TYPE ${CMAKE_BUILD_TYPE})
|
|
33
|
+
|
|
34
|
+
message(STATUS "Build shared dependencies: ON")
|
|
35
|
+
|
|
36
|
+
if(APPLE)
|
|
37
|
+
set(URD_DEPENDENCY_INSTALL_RPATH "@loader_path")
|
|
38
|
+
else()
|
|
39
|
+
set(URD_DEPENDENCY_INSTALL_RPATH "$ORIGIN")
|
|
40
|
+
endif()
|
|
41
|
+
set(
|
|
42
|
+
CMAKE_INSTALL_RPATH
|
|
43
|
+
"${URD_DEPENDENCY_INSTALL_RPATH}"
|
|
44
|
+
CACHE STRING
|
|
45
|
+
"Install runtime path for bundled shared dependencies."
|
|
46
|
+
)
|
|
47
|
+
set(
|
|
48
|
+
CMAKE_BUILD_WITH_INSTALL_RPATH
|
|
49
|
+
OFF
|
|
50
|
+
CACHE BOOL
|
|
51
|
+
"Use the build-tree runtime path while building bundled dependencies."
|
|
52
|
+
)
|
|
53
|
+
set(
|
|
54
|
+
CMAKE_INSTALL_RPATH_USE_LINK_PATH
|
|
55
|
+
OFF
|
|
56
|
+
CACHE BOOL
|
|
57
|
+
"Do not append absolute linked library directories to bundled dependency install runtime paths."
|
|
58
|
+
)
|
|
59
|
+
message(STATUS "Dependency install rpath: ${URD_DEPENDENCY_INSTALL_RPATH}")
|
|
60
|
+
|
|
61
|
+
urd_sources(URD_DEPENDENCIES)
|
|
62
|
+
# Boost's MPI and Locale components require MPICH and ICU to exist first.
|
|
63
|
+
list(REMOVE_ITEM URD_DEPENDENCIES boost)
|
|
64
|
+
list(APPEND URD_DEPENDENCIES boost)
|
|
65
|
+
foreach(dependency IN LISTS URD_DEPENDENCIES)
|
|
66
|
+
add_subdirectory("${dependency}")
|
|
67
|
+
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${dependency}/licenses/"
|
|
68
|
+
DESTINATION "${CMAKE_INSTALL_DATADIR}/licenses/${dependency}"
|
|
69
|
+
OPTIONAL
|
|
70
|
+
)
|
|
71
|
+
endforeach()
|
|
72
|
+
|
|
73
|
+
list(TRANSFORM URD_DEPENDENCIES APPEND "-download" OUTPUT_VARIABLE URD_DOWNLOAD_TARGETS)
|
|
74
|
+
add_custom_target(corresponding-source-downloads DEPENDS ${URD_DOWNLOAD_TARGETS})
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Corresponding source
|
|
2
|
+
|
|
3
|
+
`pyurd-native` wheels bundle the native dependencies in binary form. For such a wheel, download
|
|
4
|
+
`pyurd_native-<VERSION>-corresponding-source.tar.gz` from the matching
|
|
5
|
+
[`native-v<VERSION>` GitHub release](https://github.com/planning-and-learning/urd/releases).
|
|
6
|
+
It contains pyurd-native's source distribution, with the build scripts and patches of the dependencies, together with
|
|
7
|
+
the exact upstream native dependency sources, including required Git submodules.
|
|
8
|
+
The source distribution alone is also on the [PyPI files page](https://pypi.org/project/pyurd-native/#files).
|
|
9
|
+
|
|
10
|
+
`pyurd` wheels hold urd's own headers and CMake package only; their source distribution is on the
|
|
11
|
+
[PyPI files page](https://pypi.org/project/pyurd/#files).
|
|
12
|
+
|
|
13
|
+
[`SOURCES.json`](SOURCES.json) is the canonical, machine-readable manifest of
|
|
14
|
+
the repositories, revisions, archive URLs, and checksums used to build those
|
|
15
|
+
dependencies.
|