Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into migrate/ogre
Browse files Browse the repository at this point in the history
  • Loading branch information
valgur committed Sep 19, 2024
2 parents a654bee + 33ccd9b commit 5597eee
Show file tree
Hide file tree
Showing 218 changed files with 3,743 additions and 621 deletions.
10 changes: 10 additions & 0 deletions .c3i/authorized_users.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1412,3 +1412,13 @@ authorized_users:
- sun-mir
- fhamonic
- simbahebinbo
- alessiosacco
- Blackflame576
- Bakul-Gaur
- itsmejoeeey
- JustCallMeRay
- shun2wang
- czheng-bt
- jorgen
- simshi
- alatarum
10 changes: 10 additions & 0 deletions .c3i/conan_v2_ready_references.yml
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,7 @@ required_for_references:
- cuda-samples
- cunit
- cute_headers
- cutlass
- cvplot
- cwalk
- cxxgraph
Expand Down Expand Up @@ -416,6 +417,7 @@ required_for_references:
- fftw
- fire-hpp
- fixed-containers
- fixed_math
- flac
- flann
- flatbuffers
Expand Down Expand Up @@ -475,6 +477,7 @@ required_for_references:
- geographiclib
- geos
- geotrans
- getdns
- getopt-for-visual-studio
- gettext
- gf-complete
Expand Down Expand Up @@ -505,6 +508,7 @@ required_for_references:
- gnu-config
- gnulib
- gnutls
- gobject-introspection
- godot-cpp
- godot_headers
- googleapis
Expand Down Expand Up @@ -717,6 +721,7 @@ required_for_references:
- libevdev
- libevent
- libexif
- libfabric
- libfdk_aac
- libffi
- libfork
Expand Down Expand Up @@ -753,6 +758,7 @@ required_for_references:
- libjxl
- libkml
- libliftoff
- liblqr
- liblsl
- libltc
- liblzf
Expand Down Expand Up @@ -977,6 +983,7 @@ required_for_references:
- miniz
- minizip
- minizip-ng
- minmea
- mio
- mlpack
- mm_file
Expand Down Expand Up @@ -1024,6 +1031,7 @@ required_for_references:
- nasm
- ncurses
- neargye-semver
- net-snmp
- netcdf
- nettle
- newmat
Expand Down Expand Up @@ -1108,9 +1116,11 @@ required_for_references:
- openjpeg
- openldap
- openmesh
- openmpi
- openmvg
- openpam
- openscenegraph
- openslide
- openssh
- openssl
- opensubdiv
Expand Down
2 changes: 1 addition & 1 deletion .c3i/config_v1.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
id: 'conan-io/conan-center-index'

conan:
version: 1.64.1
version: 1.65.0

artifactory:
url: "https://c3i.jfrog.io/c3i"
Expand Down
2 changes: 1 addition & 1 deletion .c3i/config_v2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
id: 'conan-io/conan-center-index'

conan:
version: 2.5.0
version: 2.7.1
backup_sources:
upload_url: "https://c3i.jfrog.io/artifactory/conan-center-backup-sources/"
download_url: "https://c3i.jfrog.io/artifactory/conan-center-backup-sources/"
Expand Down
1 change: 1 addition & 0 deletions .c3i/waitlist_users.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ waitlist_users:
- NeXuS4Developer
- sabapathim
- pixelsoba
- liss-h
5 changes: 5 additions & 0 deletions docs/changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Changelog

### 12-Sep-2024 - 09:23 CEST

- [feature] Add support for Conan 2.7.1 in the CI
- [feature] Add support for Conan 1.65.0 in the CI

### 10-Jul-2024 - 13:22 CEST

- [feature] Add support for Conan 2.5.0 in the CI
Expand Down
2 changes: 1 addition & 1 deletion docs/package_templates/autotools_package/all/conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ def build_requirements(self):
self.tool_requires("libtool/x.y.z")
# only if upstream configure.ac relies on PKG_CHECK_MODULES macro
if not self.conf.get("tools.gnu:pkg_config", check_type=str):
self.tool_requires("pkgconf/x.y.z")
self.tool_requires("pkgconf/[>=1.2.3 <2]")
# required to suppport windows as a build machine
if self._settings_build.os == "Windows":
self.win_bash = True
Expand Down
4 changes: 2 additions & 2 deletions docs/package_templates/meson_package/all/conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,10 +98,10 @@ def validate(self):
# if another tool than the compiler or Meson is required to build the project (pkgconf, bison, flex etc)
def build_requirements(self):
# CCI policy assumes that Meson may not be installed on consumers machine
self.tool_requires("meson/1.2.3")
self.tool_requires("meson/[>=1.2.3 <2]")
# pkgconf is largely used by Meson, it should be added in build requirement when there are dependencies
if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str):
self.tool_requires("pkgconf/2.0.3")
self.tool_requires("pkgconf/[>=2.2 <3]")

def source(self):
get(self, **self.conan_data["sources"][self.version], strip_root=True)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ def requirements(self):
self.requires(self.tested_reference_str)

def build_requirements(self):
self.tool_requires("meson/1.2.3")
self.tool_requires("meson/[>=1.2.3 <2]")
if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str):
self.tool_requires("pkgconf/2.0.3")
self.tool_requires("pkgconf/[>=2.2 <3]")

def build(self):
meson = Meson(self)
Expand Down
29 changes: 29 additions & 0 deletions recipes/ann/all/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
cmake_minimum_required(VERSION 3.15)
project(ANN LANGUAGES CXX)

include(GNUInstallDirs)

file(GLOB ANN_SRC_FILES ${ANN_SRC_DIR}/src/*.cpp)

add_library(ANN ${ANN_SRC_FILES})
target_include_directories(ANN PUBLIC ${ANN_SRC_DIR}/include)

if(WIN32)
if(BUILD_SHARED_LIBS)
set_target_properties(ANN PROPERTIES
CXX_VISIBILITY_PRESET hidden
VISIBILITY_INLINES_HIDDEN TRUE
)
target_compile_definitions(ANN PRIVATE DLL_EXPORTS)
else()
target_compile_definitions(ANN PUBLIC ANN_STATIC)
endif()
endif()

install(DIRECTORY ${ANN_SRC_DIR}/include/ANN DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
install(
TARGETS ANN
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
12 changes: 12 additions & 0 deletions recipes/ann/all/conandata.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
sources:
"1.1.2":
url: "https://www.cs.umd.edu/~mount/ANN/Files/1.1.2/ann_1.1.2.tar.gz"
sha256: "eea03f2e224b66813226d775053316675375dcec45bd263674c052d9324a49a5"
patches:
"1.1.2":
- patch_file: "patches/1.1.2-0001-fix-windows-static.patch"
patch_description: "Fix windows static"
patch_type: "portability"
- patch_file: "patches/1.1.2-0002-fix-cppstd17+-register-keyword.patch"
patch_description: "Fix compilation with C++17 (or above) standard, by removing register keyword"
patch_type: "portability"
71 changes: 71 additions & 0 deletions recipes/ann/all/conanfile.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
from conan import ConanFile
from conan.tools.cmake import CMake, CMakeToolchain, cmake_layout
from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get
import os

required_conan_version = ">=1.53.0"


class AnnConan(ConanFile):
name = "ann"
description = (
"ANN is a library written in C++, which supports data structures and "
"algorithms for both exact and approximate nearest neighbor searching "
"in arbitrarily high dimensions."
)
license = "LGPL-2.1-or-later"
url = "https://github.com/conan-io/conan-center-index"
homepage = "https://www.cs.umd.edu/~mount/ANN"
topics = ("nns", "nearest-neighbor-search")
package_type = "library"
settings = "os", "arch", "compiler", "build_type"
options = {
"shared": [True, False],
"fPIC": [True, False],
}
default_options = {
"shared": False,
"fPIC": True,
}

def export_sources(self):
copy(self, "CMakeLists.txt", src=self.recipe_folder, dst=self.export_sources_folder)
export_conandata_patches(self)

def config_options(self):
if self.settings.os == "Windows":
del self.options.fPIC

def configure(self):
if self.options.shared:
self.options.rm_safe("fPIC")

def layout(self):
cmake_layout(self, src_folder="src")

def source(self):
get(self, **self.conan_data["sources"][self.version], strip_root=True)

def generate(self):
tc = CMakeToolchain(self)
tc.variables["ANN_SRC_DIR"] = self.source_folder.replace("\\", "/")
tc.generate()

def build(self):
apply_conandata_patches(self)
cmake = CMake(self)
cmake.configure(build_script_folder=os.path.join(self.source_folder, os.pardir))
cmake.build()

def package(self):
for license_file in ("Copyright.txt", "License.txt"):
copy(self, license_file, src=self.source_folder, dst=os.path.join(self.package_folder, "licenses"))
cmake = CMake(self)
cmake.install()

def package_info(self):
self.cpp_info.libs = ["ANN"]
if self.settings.os == "Windows" and not self.options.shared:
self.cpp_info.defines.append("ANN_STATIC")
if self.settings.os in ["Linux", "FreeBSD"]:
self.cpp_info.system_libs.append("m")
11 changes: 11 additions & 0 deletions recipes/ann/all/patches/1.1.2-0001-fix-windows-static.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/include/ANN/ANN.h
+++ b/include/ANN/ANN.h
@@ -59,7 +59,7 @@
#ifndef ANN_H
#define ANN_H

-#ifdef WIN32
+#if defined(_WIN32) && !defined(ANN_STATIC)
//----------------------------------------------------------------------
// For Microsoft Visual C++, externally accessible symbols must be
// explicitly indicated with DLL_API, which is somewhat like "extern."
Loading

0 comments on commit 5597eee

Please sign in to comment.