Skip to content

Commit

Permalink
Merge branch 'master' into migrate/resiprocate
Browse files Browse the repository at this point in the history
  • Loading branch information
valgur authored Nov 14, 2023
2 parents 2b3da84 + e474338 commit b44cb3b
Show file tree
Hide file tree
Showing 666 changed files with 12,147 additions and 4,721 deletions.
6 changes: 6 additions & 0 deletions .c3i/authorized_users.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1257,3 +1257,9 @@ authorized_users:
- martin-olivier
- lucaskdc
- fnadeau
- '0x5ea1ed'
- Kischy
- MangaD
- fabiorossetto
- Bronek
- agdavydov81
44 changes: 44 additions & 0 deletions .c3i/conan_v2_ready_references.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ required_for_references:
- abseil
- absent
- acado
- accellera-uvm-systemc
- access_private
- acl
- ada
Expand Down Expand Up @@ -70,6 +71,7 @@ required_for_references:
- aws-checksums
- aws-crt-cpp
- aws-kvs-pic
- aws-lambda-cpp
- aws-libfabric
- aws-sdk-cpp
- b2
Expand Down Expand Up @@ -109,6 +111,7 @@ required_for_references:
- breakpad
- brigand
- brotli
- brunsli
- brynet
- bshoshany-thread-pool
- btyacc
Expand Down Expand Up @@ -148,6 +151,7 @@ required_for_references:
- cfitsio
- cgal
- cgif
- cglm
- cgltf
- cgns
- chaiscript
Expand Down Expand Up @@ -208,6 +212,7 @@ required_for_references:
- cppitertools
- cpprestsdk
- cpptoml
- cpptrace
- cppunit
- cpputest
- cppzmq
Expand All @@ -220,9 +225,11 @@ required_for_references:
- crc_cpp
- create-dmg
- croncpp
- crossguid
- crowcpp-crow
- crunch
- cryptopp
- cryptopp-pem
- cs_libguarded
- csm
- cspice
Expand Down Expand Up @@ -258,8 +265,10 @@ required_for_references:
- debug_assert
- decimal_for_cpp
- deco
- detools
- di
- dice-template-library
- dime
- directx-headers
- dirent
- discount
Expand All @@ -281,6 +290,7 @@ required_for_references:
- dtl
- duckdb
- duktape
- dylib
- eabase
- earcut
- eastl
Expand All @@ -298,14 +308,17 @@ required_for_references:
- egl-headers
- eigen
- elfio
- elfutils
- embag
- embedded_ringbuf_cpp
- embree3
- emio
- emsdk
- enchant
- enet
- enhex-generic_serialization
- enhex-strong_type
- enjincppsdk
- enkits
- ensmallen
- entityx
Expand Down Expand Up @@ -414,6 +427,7 @@ required_for_references:
- glshaderpp
- glslang
- glu
- gm2calc
- gmp
- gnu-config
- gnutls
Expand All @@ -435,6 +449,7 @@ required_for_references:
- gtk
- gtk-doc-stub
- gtsam
- guetzli
- gumbo-parser
- gurkenlaeufer
- gzip-hpp
Expand All @@ -444,6 +459,7 @@ required_for_references:
- happly
- harfbuzz
- hash-library
- hayai
- hazelcast-cpp-client
- hdf4
- hdf5
Expand All @@ -463,9 +479,13 @@ required_for_references:
- homog2d
- http_parser
- hunspell
- hwdata
- hwloc
- hyperscan
- i2c-tools
- icecream-cpp
- iceoryx
- iconfontcppheaders
- icu
- id3v2lib
- iir1
Expand Down Expand Up @@ -505,6 +525,7 @@ required_for_references:
- jom
- jpcre2
- jpeg-compressor
- jsbsim
- jsmn
- json-c
- json-schema-validator
Expand All @@ -529,6 +550,7 @@ required_for_references:
- kmod
- ktx
- kuba-zip
- lager
- laszip
- lazycsv
- lcms
Expand Down Expand Up @@ -560,10 +582,13 @@ required_for_references:
- libcbor
- libccd
- libcds
- libcheck
- libcoap
- libconfig
- libconfuse
- libcoro
- libcorrect
- libcpuid
- libcuckoo
- libcurl
- libdaemon
Expand Down Expand Up @@ -651,6 +676,7 @@ required_for_references:
- libpng
- libpq
- libpqxx
- libproperties
- libpsl
- libqrencode
- librasterlite
Expand All @@ -674,6 +700,7 @@ required_for_references:
- libsmacker
- libsndfile
- libsodium
- libsolace
- libspatialindex
- libspatialite
- libspng
Expand All @@ -694,6 +721,7 @@ required_for_references:
- libunistring
- libunwind
- libusb
- libusb-compat
- libuuid
- libuv
- libuvc
Expand Down Expand Up @@ -856,6 +884,8 @@ required_for_references:
- nodesoup
- norm
- npcap
- nsimd
- nspr
- nsync
- ntv2
- nudb
Expand Down Expand Up @@ -898,6 +928,7 @@ required_for_references:
- opencore-amr
- opencv
- openddl-parser
- opene57
- openexr
- openfbx
- openfst
Expand Down Expand Up @@ -1038,6 +1069,7 @@ required_for_references:
- rapidyaml
- raylib
- re2
- re2c
- reactiveplusplus
- read-excel
- readerwriterqueue
Expand Down Expand Up @@ -1077,6 +1109,7 @@ required_for_references:
- samurai
- sbepp
- sbp
- scdoc
- scip
- scippp
- scnlib
Expand Down Expand Up @@ -1137,10 +1170,12 @@ required_for_references:
- spirv-tools
- spscqueue
- spy
- sqlcipher
- sqlite3
- sqlite_orm
- sqlitecpp
- sqlpp11
- sqlpp11-connector-sqlite3
- squirrel
- ssht
- ssp
Expand All @@ -1160,6 +1195,8 @@ required_for_references:
- stringzilla
- strong_type
- structopt
- stx
- subunit
- sundials
- svector
- svgpp
Expand All @@ -1182,6 +1219,8 @@ required_for_references:
- tcl
- tclap
- tcp-wrappers
- tcsbank-uconfig
- tcsbank-uri-template
- tensorflow-lite
- tensorpipe
- termcap
Expand Down Expand Up @@ -1246,6 +1285,7 @@ required_for_references:
- turtle
- tweetnacl
- twitch-native-ipc
- twitchtv-libsoundtrackutil
- type_safe
- tz
- ua-nodeset
Expand All @@ -1267,6 +1307,7 @@ required_for_references:
- utf8.h
- utf8proc
- utfcpp
- uthash
- util-linux-libuuid
- uvw
- uwebsockets
Expand All @@ -1280,6 +1321,7 @@ required_for_references:
- vectorclass
- vectorial
- veque
- very-simple-smtps
- vincentlaucsb-csv-parser
- vir-simd
- visit_struct
Expand All @@ -1296,6 +1338,7 @@ required_for_references:
- vulkan-validationlayers
- vvenc
- wasm-micro-runtime
- wasmedge
- wasmer
- wasmtime
- wasmtime-cpp
Expand Down Expand Up @@ -1351,6 +1394,7 @@ required_for_references:
- yaclib
- yajl
- yaml-cpp
- yandex-ozo
- yas
- yasm
- yder
Expand Down
1 change: 1 addition & 0 deletions .c3i/config_v2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ tasks:
- boost
- qt
- llvm
- gstreamer
cci:
conan_v2_run_export: false
detailed_status_checks: false
Expand Down
29 changes: 25 additions & 4 deletions docs/package_templates/autotools_package/all/conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@
from conan.tools.build import check_min_cppstd, cross_building
from conan.tools.env import Environment, VirtualBuildEnv, VirtualRunEnv
from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get, rm, rmdir
from conan.tools.gnu import Autotools, AutotoolsToolchain, AutotoolsDeps, PkgConfigDeps
from conan.tools.gnu import Autotools, AutotoolsDeps, AutotoolsToolchain, PkgConfigDeps
from conan.tools.layout import basic_layout
from conan.tools.microsoft import is_msvc, unix_path
from conan.tools.scm import Version
import os


Expand Down Expand Up @@ -41,6 +42,21 @@ class PackageConan(ConanFile):
"with_foobar": True,
}

@property
def _min_cppstd(self):
return 14

# in case the project requires C++14/17/20/... the minimum compiler version should be listed
@property
def _compilers_minimum_version(self):
return {
"apple-clang": "10",
"clang": "7",
"gcc": "7",
"msvc": "191",
"Visual Studio": "15",
}

@property
def _settings_build(self):
return getattr(self, "settings_build", self.settings)
Expand All @@ -58,8 +74,8 @@ def configure(self):
if self.options.shared:
self.options.rm_safe("fPIC")
# for plain C projects only
self.settings.rm_safe("compiler.libcxx")
self.settings.rm_safe("compiler.cppstd")
self.settings.rm_safe("compiler.libcxx")

def layout(self):
# src_folder must use the same source folder name the project
Expand All @@ -74,7 +90,12 @@ def requirements(self):
def validate(self):
# validate the minimum cpp standard supported. Only for C++ projects
if self.settings.compiler.get_safe("cppstd"):
check_min_cppstd(self, 11)
check_min_cppstd(self, self._min_cppstd)
minimum_version = self._compilers_minimum_version.get(str(self.settings.compiler), False)
if minimum_version and Version(self.settings.compiler.version) < minimum_version:
raise ConanInvalidConfiguration(
f"{self.ref} requires C++{self._min_cppstd}, which your compiler does not support."
)
if self.settings.os not in ["Linux", "FreeBSD", "Macos"]:
raise ConanInvalidConfiguration(f"{self.ref} is not supported on {self.settings.os}.")

Expand Down Expand Up @@ -155,7 +176,7 @@ def build(self):
autotools.make()

def package(self):
copy(self, pattern="LICENSE", src=self.source_folder, dst=os.path.join(self.package_folder, "licenses"))
copy(self, "LICENSE", self.source_folder, os.path.join(self.package_folder, "licenses"))
autotools = Autotools(self)
autotools.install()

Expand Down
Loading

0 comments on commit b44cb3b

Please sign in to comment.