Merge remote-tracking branch 'tgurr/osg'

This commit is contained in:
Julian Ospald 2022-02-01 21:58:38 +01:00
commit 13dccfcc2c
Signed by: hasufell
GPG Key ID: 3786C5262ECB4A3F
2 changed files with 0 additions and 166 deletions

View File

@ -1,80 +0,0 @@
# Copyright 2013-2014 Thomas Witt
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PN="OpenSceneGraph"
MY_PNV=${MY_PN}-${PV}
require github [ user=openscenegraph project=${MY_PN} tag=${MY_PNV} ]
require cmake [ api=2 ]
SUMMARY="High performance 3D graphics toolkit"
DESCRIPTION="
The OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application
developers in fields such as visual simulation, games, virtual reality, scientific visualization
and modelling. Written entirely in Standard C++ and OpenGL it runs on all Windows platforms, OSX,
GNU/Linux, IRIX, Solaris, HP-Ux, AIX and FreeBSD operating systems. The OpenSceneGraph is now well
established as the world leading scene graph technology, used widely in the vis-sim, space,
scientific, oil-gas, games and virtual reality industries.
"
HOMEPAGE+=" http://${PN}.org"
LICENCES="wxWinLL-3 LGPL-2.1"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: ijg-jpeg jpeg-turbo ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
virtual/unzip
build+run:
app-text/poppler[cairo]
dev-libs/glib:2
media/ffmpeg
media-libs/freetype:2
media-libs/giflib:=
media-libs/gstreamer:1.0
media-libs/imath
media-libs/jasper
media-libs/libpng:=
media-libs/openexr[>=3]
media-libs/SDL:0
media-libs/tiff
media-plugins/gst-plugins-base:1.0
net-misc/curl
sys-libs/zlib
x11-dri/mesa
x11-libs/cairo
x11-libs/libX11
x11-libs/libXrandr
providers:ijg-jpeg? ( media-libs/jpeg:= )
providers:jpeg-turbo? ( media-libs/libjpeg-turbo )
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PN}-3.6.5-openexr3.patch
)
CMAKE_SRC_CONFIGURE_PARAMS=(
-DCMAKE_DISABLE_FIND_PACKAGE_Asio=1
-DCMAKE_DISABLE_FIND_PACKAGE_Inventor=1
-DCMAKE_DISABLE_FIND_PACKAGE_COLLADA=1
-DCMAKE_DISABLE_FIND_PACKAGE_FBX=
-DCMAKE_DISABLE_FIND_PACKAGE_Performer=1
-DCMAKE_DISABLE_FIND_PACKAGE_GDAL=1
-DCMAKE_DISABLE_FIND_PACKAGE_LibVNCServer=1
-DCMAKE_DISABLE_FIND_PACKAGE_OurDCMTK=1
-DCMAKE_DISABLE_FIND_PACKAGE_RSVG=1
-DCMAKE_DISABLE_FIND_PACKAGE_NVTT=1
-DCMAKE_DISABLE_FIND_PACKAGE_LIBLAS=1
-DCMAKE_DISABLE_FIND_PACKAGE_Lua51=1
-DCMAKE_DISABLE_FIND_PACKAGE_Lua52=1
-DCMAKE_DISABLE_FIND_PACKAGE_SDL2=1
-DOSG_USE_LOCAL_LUA_SOURCE=OFF
-DOPENGL_PROFILE=GL2
-DDYNAMIC_OPENSCENEGRAPH=ON
-DLIB_POSTFIX=""
)

View File

@ -1,86 +0,0 @@
Source: Arch, https://github.com/archlinux/svntogit-community/blob/packages/openscenegraph/trunk/openscenegraph-openexr3.patch
Upstream: Reported, https://github.com/openscenegraph/OpenSceneGraph/issues/1075
Reason: Fix build with OpenEXR >= 3
diff --git a/CMakeModules/FindOpenEXR.cmake b/CMakeModules/FindOpenEXR.cmake
index 233be972b..d1b022881 100644
--- a/CMakeModules/FindOpenEXR.cmake
+++ b/CMakeModules/FindOpenEXR.cmake
@@ -51,11 +51,11 @@ MACRO(OPENEXR_FIND libname)
OPENEXR_FIND_VAR(OPENEXR_${libname}_LIBRARY_DEBUG ${libname}d)
ENDMACRO(OPENEXR_FIND)
-OPENEXR_FIND(IlmImf)
+OPENEXR_FIND(OpenEXR)
SET(OPENEXR_FOUND "NO")
-IF(OPENEXR_INCLUDE_DIR AND OPENEXR_IlmImf_LIBRARY)
- SET(OPENEXR_LIBRARIES ${OPENEXR_IlmImf_LIBRARY} )
- SET(OPENEXR_LIBRARIES_VARS OPENEXR_IlmImf_LIBRARY )
+IF(OPENEXR_INCLUDE_DIR AND OPENEXR_OpenEXR_LIBRARY)
+ SET(OPENEXR_LIBRARIES ${OPENEXR_OpenEXR_LIBRARY} )
+ SET(OPENEXR_LIBRARIES_VARS OPENEXR_OpenEXR_LIBRARY )
SET(OPENEXR_FOUND "YES")
-ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_IlmImf_LIBRARY)
+ENDIF(OPENEXR_INCLUDE_DIR AND OPENEXR_OpenEXR_LIBRARY)
diff --git a/CMakeModules/Findilmbase.cmake b/CMakeModules/Findilmbase.cmake
index 4b076c7c9..4610497fa 100644
--- a/CMakeModules/Findilmbase.cmake
+++ b/CMakeModules/Findilmbase.cmake
@@ -10,7 +10,7 @@
# Created by Robert Osfield.
-FIND_PATH(ILMBASE_INCLUDE_DIR OpenEXR/ImathVec.h
+FIND_PATH(ILMBASE_INCLUDE_DIR Imath/ImathVec.h
$ENV{ILMBASE_DIR}/include
$ENV{ILMBASE_DIR}
~/Library/Frameworks
@@ -28,7 +28,7 @@ FIND_PATH(ILMBASE_INCLUDE_DIR OpenEXR/ImathVec.h
# example: ILMBASE_FIND_VAR(OPENEXR_IlmThread_LIBRARY IlmThread)
MACRO(ILMBASE_FIND_VAR varname libname)
FIND_LIBRARY( ${varname}
- NAMES ${libname} ${libname}-2_1 ${libname}-2_2
+ NAMES ${libname} ${libname}-2_1 ${libname}-2_2 ${libname}-3_0
PATHS
$ENV{ILMBASE_DIR}/lib
$ENV{ILMBASE_DIR}
@@ -53,11 +53,11 @@ ENDMACRO(ILMBASE_FIND)
ILMBASE_FIND(IlmThread)
ILMBASE_FIND(Iex)
-ILMBASE_FIND(Half)
+ILMBASE_FIND(Imath)
SET(ILMBASE_FOUND "NO")
-IF(ILMBASE_INCLUDE_DIR AND ILMBASE_IlmThread_LIBRARY AND ILMBASE_Iex_LIBRARY AND ILMBASE_Half_LIBRARY)
- SET(ILMBASE_LIBRARIES ${ILMBASE_IlmThread_LIBRARY} ${ILMBASE_Half_LIBRARY} ${ILMBASE_Iex_LIBRARY} )
- SET(ILMBASE_LIBRARIES_VARS ILMBASE_IlmThread_LIBRARY ILMBASE_Half_LIBRARY ILMBASE_Iex_LIBRARY )
+IF(ILMBASE_INCLUDE_DIR AND ILMBASE_IlmThread_LIBRARY AND ILMBASE_Iex_LIBRARY AND ILMBASE_Imath_LIBRARY)
+ SET(ILMBASE_LIBRARIES ${ILMBASE_IlmThread_LIBRARY} ${ILMBASE_Imath_LIBRARY} ${ILMBASE_Iex_LIBRARY} )
+ SET(ILMBASE_LIBRARIES_VARS ILMBASE_IlmThread_LIBRARY ILMBASE_Imath_LIBRARY ILMBASE_Iex_LIBRARY )
SET(ILMBASE_FOUND "YES")
-ENDIF(ILMBASE_INCLUDE_DIR AND ILMBASE_IlmThread_LIBRARY AND ILMBASE_Iex_LIBRARY AND ILMBASE_Half_LIBRARY)
+ENDIF(ILMBASE_INCLUDE_DIR AND ILMBASE_IlmThread_LIBRARY AND ILMBASE_Iex_LIBRARY AND ILMBASE_Imath_LIBRARY)
diff --git a/src/osgPlugins/exr/CMakeLists.txt b/src/osgPlugins/exr/CMakeLists.txt
index 6191ed18f..9a368b2c2 100644
--- a/src/osgPlugins/exr/CMakeLists.txt
+++ b/src/osgPlugins/exr/CMakeLists.txt
@@ -1,4 +1,4 @@
-INCLUDE_DIRECTORIES( ${ILMBASE_INCLUDE_DIR}/OpenEXR )
+INCLUDE_DIRECTORIES( ${ILMBASE_INCLUDE_DIR}/Imath )
INCLUDE_DIRECTORIES( ${OPENEXR_INCLUDE_DIR}/OpenEXR )
SET(TARGET_SRC ReaderWriterEXR.cpp )
diff --git a/src/osgPlugins/exr/ReaderWriterEXR.cpp b/src/osgPlugins/exr/ReaderWriterEXR.cpp
index 7132e97f8..96c5507ef 100644
--- a/src/osgPlugins/exr/ReaderWriterEXR.cpp
+++ b/src/osgPlugins/exr/ReaderWriterEXR.cpp
@@ -13,6 +13,7 @@
#include <osgDB/FileNameUtils>
#include <osgDB/FileUtils>
+#include <ImfInt64.h>
#include <ImfRgbaFile.h>
#include <ImfIO.h>
#include <ImfArray.h>