Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
6d72dd6
openscenegraph: migrate to Conan v2
valgur Jul 31, 2023
b5d14fb
openscenegraph: improve patching
valgur Aug 3, 2023
ba49b37
openscenegraph: bump deps
valgur Aug 7, 2023
d5921af
openscenegraph: further migration
valgur Nov 14, 2023
b6079cd
fix
maksim-petukhou Jul 21, 2023
9bacc46
Apply suggestions from code review
maksim-petukhou Oct 30, 2023
6445d2e
review
maksim-petukhou Nov 3, 2023
1e7af91
openscenegraph: bump deps
valgur Dec 4, 2023
86f09a3
openscenegraph: make CMake dependency detection more robust
valgur Dec 4, 2023
40ffca9
openscenegraph: fix CMake target name
valgur Jan 2, 2024
516cc53
openscenegraph: fix v1 build
valgur Jan 3, 2024
ee1e5a7
openscenegraph: reproduce the project CMake and pkg-config structures…
valgur Jan 3, 2024
8a8d5ff
openscenegraph: fix v1 incompatibility
valgur Jan 4, 2024
f756c37
openscenegraph: drop test_v1_package
valgur Jan 4, 2024
ceca0e6
wip
czoido Jan 18, 2024
2f630cf
wip
czoido Jan 22, 2024
ecfb524
wip
czoido Jan 22, 2024
dc56727
fix test
czoido Jan 22, 2024
f862d9d
do not convert LIBRARY to LIBRARIES
czoido Jan 23, 2024
d3cbc7f
openscenegraph: re-enable patches
valgur Jan 24, 2024
7032ab3
add patches, move patch
czoido Jan 25, 2024
fd99ec8
minor changes
czoido Jan 25, 2024
467ff9d
fix linter
czoido Jan 25, 2024
8ba7abf
fix freetype plugin
czoido Jan 26, 2024
eb12eb3
wip
czoido Jan 29, 2024
82aa65c
wip
czoido Feb 1, 2024
1053945
fix rebase issue
anton-danielsson Apr 22, 2024
04e8952
fix rebase issue
anton-danielsson Apr 22, 2024
56cbcd5
Don't replace OSG_LIBRARY_STATIC in plugins root folder
anton-danielsson Apr 22, 2024
37f623e
test, try to find png/gif/jpeg also on macos
anton-danielsson Apr 23, 2024
ee81883
Revert "test, try to find png/gif/jpeg also on macos"
anton-danielsson Apr 23, 2024
455a931
Add extra guard to not include png plug-in on macos
anton-danielsson Apr 23, 2024
20d3a27
Disable a check in the test
anton-danielsson Apr 23, 2024
2240c0d
Revert "Disable a check in the test"
anton-danielsson Apr 23, 2024
e3e5549
Make sure curl plug-in is only enabled if requested
anton-danielsson Apr 23, 2024
ca4d926
Try to fix issues with longpaths...
anton-danielsson Apr 24, 2024
fd80f21
Revert "Try to fix issues with longpaths..."
anton-danielsson Apr 24, 2024
dae498d
add back short paths to please conan 1 builds
anton-danielsson Apr 24, 2024
68128c2
fix some warnings
anton-danielsson Apr 27, 2024
a0fd973
Update recipes/openscenegraph/all/patches/0009-replace-auto-ptr-in-pl…
anton-danielsson May 14, 2024
b5372fa
Update recipes/openscenegraph/all/conanfile.py
czoido May 20, 2024
dce6a39
Update recipes/openscenegraph/all/conanfile.py
czoido May 20, 2024
0e21fc2
Update recipes/openscenegraph/all/conanfile.py
czoido May 20, 2024
3cb4d20
Update recipes/openscenegraph/all/conanfile.py
czoido May 20, 2024
27bad52
Update recipes/openscenegraph/all/conanfile.py
czoido May 20, 2024
5d9a85b
Merge branch 'master' into migrate/openscenegraph
czoido May 20, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 40 additions & 19 deletions recipes/openscenegraph/all/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,23 +1,44 @@
cmake_minimum_required(VERSION 3.1.2)
cmake_minimum_required(VERSION 3.15)
project(cmake_wrapper)

include(${PROJECT_BINARY_DIR}/conanbuildinfo.cmake)
conan_basic_setup(NO_OUTPUT_DIRS)
macro(custom_find_package name variable)
string(TOUPPER ${name} name_upper)
if(${variable})
find_package(${name} ${ARGN} REQUIRED CONFIG
# Allow only Conan packages
NO_DEFAULT_PATH
PATHS ${CMAKE_PREFIX_PATH}
)
set(${name_upper}_FOUND TRUE)
set(${name_upper}_VERSION_STRING ${${name}_VERSION_STRING})
set(${name_upper}_INCLUDE_DIRS ${${name}_INCLUDE_DIRS})
set(${name_upper}_INCLUDE_DIR ${${name}_INCLUDE_DIR})
set(${name_upper}_LIBRARIES ${${name}_LIBRARIES})
set(${name_upper}_DEFINITIONS ${${name}_DEFINITIONS})
unset(name_upper)
else()
set(${name}_FOUND FALSE)
set(${name_upper}_FOUND FALSE)
endif()
endmacro()

# Hack to insure that conan's copy of these are used, rather than CMake's
# If this isn't here, find_package(X11) will pull in CMake's copy
find_package(Freetype QUIET)
find_package(Fontconfig QUIET)
custom_find_package(Boost OSG_WITH_ASIO)
custom_find_package(Asio OSG_WITH_ASIO)
custom_find_package(CURL OSG_WITH_CURL)
custom_find_package(Fontconfig OSG_TEXT_USE_FONTCONFIG)
custom_find_package(Freetype OSG_WITH_FREETYPE)
custom_find_package(GDAL OSG_WITH_GDAL)
custom_find_package(GIFLIB OSG_WITH_GIFLIB)
custom_find_package(GTA OSG_WITH_GTA)
custom_find_package(JPEG OSG_WITH_JPEG)
custom_find_package(Jasper OSG_WITH_JASPER)
custom_find_package(OpenEXR OSG_WITH_OPENEXR)
custom_find_package(PNG OSG_WITH_PNG)
custom_find_package(TIFF OSG_WITH_TIFF)
custom_find_package(ZLIB OSG_WITH_ZLIB)
custom_find_package(DCMTK OSG_WITH_DCMTK)
# custom_find_package(Poppler)
# custom_find_package(RSVG)
# custom_find_package(SDL2)

# Workaround limitations of the cmake_find_package generator
set(FREETYPE_FOUND ${Freetype_FOUND})
if(FREETYPE_FOUND)
set(FREETYPE_LIBRARIES ${Freetype_LIBRARIES})
set(FREETYPE_INCLUDE_DIRS ${Freetype_INCLUDE_DIRS})
endif()

if(APPLE)
add_compile_definitions("GL_SILENCE_DEPRECATION")
endif()

add_subdirectory("source_subfolder")
add_subdirectory(src)
23 changes: 23 additions & 0 deletions recipes/openscenegraph/all/conan-official-osg-variables.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Reproduce https://github.com/openscenegraph/OpenSceneGraph/blob/master/packaging/cmake/OpenSceneGraphConfig.cmake.in
# Component-specific variables are not created. Use the component targets instead.

# Only export these for the OpenSceneGraph config file, not FindOSG.cmake
if(NOT DEFINED OSG_LIBRARIES)
set(OPENSCENEGRAPH_FOUND TRUE)
set(OPENSCENEGRAPH_LIBRARIES ${OpenSceneGraph_LIBRARIES})
set(OPENSCENEGRAPH_INCLUDE_DIR ${OpenSceneGraph_INCLUDE_DIRS})
set(OPENSCENEGRAPH_INCLUDE_DIRS ${OpenSceneGraph_INCLUDE_DIRS})

set(OPENSCENEGRAPH_VERSION ${OpenSceneGraph_VERSION})
set(OPENSCENEGRAPH_VERSION_STRING ${OpenSceneGraph_VERSION_STRING})

set(OSG_LIBRARY ${OpenSceneGraph_LIBRARIES})
set(OSG_LIBRARIES ${OpenSceneGraph_LIBRARIES})
set(OSG_INCLUDE_DIR ${OpenSceneGraph_INCLUDE_DIRS})
set(OSG_INCLUDE_DIRS ${OpenSceneGraph_INCLUDE_DIRS})
endif()

# Reproduce https://github.com/openscenegraph/OpenSceneGraph/blob/master/CMakeModules/FindOpenThreads.cmake
set(OPENTHREADS_FOUND TRUE)
set(OPENTHREADS_INCLUDE_DIR ${OpenSceneGraph_INCLUDE_DIRS})
set(OPENTHREADS_LIBRARY OpenThreads::OpenThreads)
42 changes: 31 additions & 11 deletions recipes/openscenegraph/all/conandata.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,38 @@
sources:
3.6.5:
sha256: aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12
url: https://github.com/openscenegraph/OpenSceneGraph/archive/OpenSceneGraph-3.6.5.tar.gz
url: "https://github.com/openscenegraph/OpenSceneGraph/archive/OpenSceneGraph-3.6.5.tar.gz"
sha256: "aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12"
patches:
3.6.5:
- patch_file: patches/0001-fix-to_cmake_path-usage.patch
base_path: source_subfolder
- patch_file: patches/0002-Use-standard-CMake-name-for-gif.patch
base_path: source_subfolder
- patch_file: patches/0003-Correct-usage-of-_LIBRARY-to-_LIBRARIES.patch
base_path: source_subfolder
- patch_file: patches/0004-Allow-explicit-control-of-plugins.patch
base_path: source_subfolder
patch_description: Fix cmake paths
patch_type: portability
- patch_file: patches/0005-use-JPEG-target-for-plugin.patch
base_path: source_subfolder
patch_description: This fixes building against a static libjpeg on windows
patch_type: portability
- patch_file: patches/0006-Declare-result-as-LONG-for-Mingw-build.patch
base_path: source_subfolder
patch_description: Win32's ChangeDisplaySettingsEx() API function is documented as returning `LONG`, which evidently is not always the same as `unsigned int` (Mingw64.) This cause a compile error on Mingw with clang10.
patch_type: official
patch_source: https://github.com/openscenegraph/OpenSceneGraph/commit/67468cce344dd5e503aaa1063845f34720563f79
- patch_file: patches/0007-fix-msvc-with-std-c++17.patch
patch_description: Fix to be able to build with c++17 on MSVC
patch_type: official
patch_source: https://github.com/openscenegraph/OpenSceneGraph/pull/1055
- patch_file: patches/0008-replace-mem-fun-ref.patch
patch_description: Replaced std::mem_fun_ref usage to avoid compatiblity with modern compilers
patch_type: official
patch_source: https://github.com/openscenegraph/OpenSceneGraph/commit/8a0114a46a4bad9041297950fe3bfbb2aea6e1da
- patch_file: patches/0009-replace-auto-ptr-in-plugins.patch
patch_description: auto_ptr is removed in C++17.
patch_type: portability
patch_source: https://github.com/openscenegraph/OpenSceneGraph/pull/1246
- patch_file: patches/0010-replace-ptr-fun-in-obj-plugin.patch
patch_description: ptr_fun is removed in C++17
patch_type: portability
patch_source: https://github.com/openscenegraph/OpenSceneGraph/pull/1246
- patch_file: patches/0011-remove-deprecated-register.patch
patch_description: The "register" keyword is deprecated as of C++17
patch_type: bugfix
patch_source:
- https://github.com/openscenegraph/OpenSceneGraph/pull/1296
- https://github.com/openscenegraph/OpenSceneGraph/pull/951
Loading