From: root Date: Mon, 30 Sep 2019 14:41:50 +0000 (-0600) Subject: revert openexr-2.4.0, breaks most builds, req cmake past baseline, bad configure... X-Git-Tag: 2019-09~1 X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=commitdiff_plain;h=fad344fef5e7cb1259e49c61208b1159bc382aee revert openexr-2.4.0, breaks most builds, req cmake past baseline, bad configure fallbacks --- diff --git a/cinelerra-5.1/cinelerra/file.C b/cinelerra-5.1/cinelerra/file.C index fe5b9f59..ad8cf7fc 100644 --- a/cinelerra-5.1/cinelerra/file.C +++ b/cinelerra-5.1/cinelerra/file.C @@ -422,7 +422,7 @@ int File::probe() else continue; return FILE_OK; } -#ifdef HAVE_OPENEXR +#ifdef HAVE_EXR if( !strcmp(pref->name,"EXR") ) { // EXR file if( !FileEXR::check_sig(this->asset, data)) continue; file = new FileEXR(this->asset, this); diff --git a/cinelerra-5.1/cinelerra/fileexr.C b/cinelerra-5.1/cinelerra/fileexr.C index 78f339cb..351da2a3 100644 --- a/cinelerra-5.1/cinelerra/fileexr.C +++ b/cinelerra-5.1/cinelerra/fileexr.C @@ -31,16 +31,16 @@ #include "mwindow.inc" #include "vframe.h" -#include "OpenEXR/ImfChannelList.h" -#include "OpenEXR/ImfChromaticities.h" -#include "OpenEXR/ImfCompression.h" -#include "OpenEXR/ImfIO.h" -#include "OpenEXR/ImfInputFile.h" -#include "OpenEXR/ImfOutputFile.h" -#include "OpenEXR/ImfPixelType.h" -#include "OpenEXR/ImfRgbaFile.h" -#include "OpenEXR/ImfRgbaYca.h" -#include "OpenEXR/ImfVersion.h" +#include "ImfChannelList.h" +#include "ImfChromaticities.h" +#include "ImfCompression.h" +#include "ImfIO.h" +#include "ImfInputFile.h" +#include "ImfOutputFile.h" +#include "ImfPixelType.h" +#include "ImfRgbaFile.h" +#include "ImfRgbaYca.h" +#include "ImfVersion.h" class EXRIStream : public Imf::IStream { diff --git a/cinelerra-5.1/configure.ac b/cinelerra-5.1/configure.ac index e6ee56a3..7d4cdca0 100644 --- a/cinelerra-5.1/configure.ac +++ b/cinelerra-5.1/configure.ac @@ -236,6 +236,15 @@ PKG_3RD([giflib],[yes], [ libgif.a ], [ . ]) +PKG_3RD([ilmbase],[auto], + [ilmbase-2.2.1], + [ Iex/.libs/libIex.a \ + IexMath/.libs/libIexMath.a \ + Half/.libs/libHalf.a \ + Imath/.libs/libImath.a \ + IlmThread/.libs/libIlmThread.a ], + [ Iex Half Imath config IlmThread ]) + PKG_DEF([ladspa], [ladspa-0.4.17], [], []) PKG_3RD([lame],[auto], @@ -327,15 +336,10 @@ PKG_3RD([mjpegtools],[yes], [ . lavtools utils ]) PKG_3RD([openexr],[auto], - [openexr-2.4.0], - [ build/usr/local/lib/libIlmImfUtil.a \ - build/usr/local/lib/libIlmImf.a \ - build/usr/local/lib/libIlmThread.a \ - build/usr/local/lib/libImath.a \ - build/usr/local/lib/libIexMath.a \ - build/usr/local/lib/libIex.a \ - build/usr/local/lib/libHalf.a ], - [ build/usr/local/include ]) + [openexr-2.2.1], + [ IlmImf/.libs/libIlmImf.a \ + IlmImfUtil/.libs/libIlmImfUtil.a ], + [ IlmImf config ]) #PKG_3RD([festival],[no], # [festival], @@ -558,6 +562,8 @@ CHECK_LIB([openjpeg], [openjp2], [opj_version]) CHECK_HEADERS([openjpeg], [openjpeg headers], [openjpeg.h]) CHECK_LIB([libsndfile], [sndfile], [sf_open]) CHECK_HEADERS([libsndfile], [sndfile headers], [sndfile.h]) +CHECK_LIB([ilmbase], [IlmImf], [ImfOpenInputFile]) +CHECK_HEADERS([ilmbase], [IlmImf headers], [OpenEXR/ImfCRgbaFile.h]) CHECK_LIB([libtheora], [theora], [theora_info_init], [-ltheoraenc -ltheoradec -logg]) CHECK_HEADERS([libtheora], [threora headers], [theora/theoraenc.h]) CHECK_LIB([libvorbis], [vorbisenc], [vorbis_encode_init], [-lvorbis -lvorbisfile -logg]) @@ -708,6 +714,8 @@ CHECK_WANT([CUDA], [auto], [build cuda plugins], [ CHECK_WANT([DL], [auto], [system has libdl], [ CHECK_LIB([DL], [dl], [dlopen])]) +CHECK_WANT([EXR], [auto], [use exr], []) + CHECK_WANT([OPENCV], [no], [opencv=sys/sta/dyn,git/tar=url], [ ]) @@ -718,6 +726,7 @@ CHECK_WANT([OPENEXR], [auto], [use openexr], [ AC_MSG_CHECKING([for openexr available]) saved_LIBS="$LIBS" saved_CXXFLAGS="$CXXFLAGS" + # ilmbase libs LIBS=" -lIlmImf -lIlmThread -lIex -lpthread" CXXFLAGS="-I/usr/include/OpenEXR -I/usr/local/include/OpenEXR" AC_LANG_PUSH(C++) @@ -737,9 +746,8 @@ EXRIStream() : Imf::IStream("mypath") {} }; class EXROStream : public Imf::OStream { public: EXROStream() : Imf::OStream("mypath") {} }; ]])], [HAVE_OPENEXR=yes], [HAVE_OPENEXR=no]) - HAVE_openexr="$HAVE_OPENEXR" RESULT="$HAVE_OPENEXR" - if test "x$RESULT" = "xyes" -a "x$WANT_STATIC_BUILD" = "xno"; then + if test "x$RESULT" = "xyes"; then SHARED_openexr="$LIBS" CFG_CFLAGS+=" -I/usr/include/OpenEXR -I/usr/local/include/OpenEXR" fi @@ -788,6 +796,7 @@ for dep in \ ffmpeg/twolame ffmpeg/lame ffmpeg/openjpeg \ ffmpeg/libvorbis ffmpeg/libtheora ffmpeg/x264 ffmpeg/x265 \ libiec61883/libraw1394 libavc1394/librom1394 \ + openexr/ilmbase ilmbase/libogg \ libtheora/libogg libtheora/libvorbis ; do lib=`dirname $dep`; needs=`basename $dep` eval pkg_lib="\$PKG_$lib"; eval needs_lib="\$HAVE_$needs"; @@ -822,6 +831,7 @@ PKG_PROVIDE([ffmpeg]) PKG_PROVIDE([fftw]) PKG_PROVIDE([flac]) PKG_PROVIDE([giflib]) +PKG_PROVIDE([ilmbase], [$WANT_OPENEXR]) PKG_PROVIDE([ladspa],[$WANT_LADSPA_BUILD]) PKG_PROVIDE([lame]) PKG_PROVIDE([libavc1394],[$WANT_FIREWIRE]) diff --git a/cinelerra-5.1/thirdparty/Makefile b/cinelerra-5.1/thirdparty/Makefile index 27c3b9a0..846a843f 100644 --- a/cinelerra-5.1/thirdparty/Makefile +++ b/cinelerra-5.1/thirdparty/Makefile @@ -191,6 +191,9 @@ audiofile.mak_params?=LIBS="-lm -lstdc++" flac.cfg_params?= --enable-shared=no flac.cflags?="$(call inc_path,libogg) $(call ld_path,libogg,src/.libs)" giflib.cfg_params=echo "exec true" > ./configure; chmod +x ./configure; +ilmbase.cfg_vars= CFLAGS+=" -Wno-narrowing" CXXFLAGS+=" -Wno-narrowing" +ilmbase.cfg_params?=--prefix=$(call bld_path,ilmbase,usr) +ilmbase.mak_params?=; $(MAKE) -C ilmbase* install; cd $(call bld_path,ilmbase); ln -sf lib64 usr/lib lame.cfg_vars?= CFLAGS+=" -O" lame.cfg_params?=--enable-shared=no lame.mak_params?= ; cd $(call bld_path,lame,include); ln -sf . lame @@ -232,14 +235,8 @@ openjpeg.cfg_vars?=$(call cmake_config,.) openjpeg.mak_params?= ; cd $(call bld_path,openjpeg,src/lib/openjp2); ln -sf . openjpeg-2.1 opencv.cfg_vars?=$(call cmake_config,.) opencv.cfg_params?= -DBUILD_SHARED_LIBS:BOOL=OFF -openexr.cfg_params?=\ - -DILMBASE_BUILD_BOTH_STATIC_SHARED:BOOL=ON \ - -DOPENEXR_BUILD_BOTH_STATIC_SHARED:BOOL=ON \ - -DILMBASE_LIB_SUFFIX= -DILMBASE_STATIC_LIB_SUFFIX= \ - -DOPENEXR_LIB_SUFFIX= -DOPENEXR_STATIC_LIB_SUFFIX= \ - -DCMAKE_INSTALL_LIBDIR=lib -openexr.cfg_vars?= mkdir build && cd build && $(call cmake_config,..) -openexr.mak_params?= -C build install DESTDIR=. +openexr.cfg_vars?=LD_LIBRARY_PATH=$(call bld_path,ilmbase,usr/lib) +openexr.cfg_params?=--enable-shared=no --with-ilmbase-prefix=$(call bld_path,ilmbase,usr) speech_tools.mak_params?=-j1 tiff.cfg_params+= --enable-shared=no --disable-zstd $(call if_npkg,libwebp,--without-webp) twolame.cfg_params?=--enable-shared=no @@ -321,6 +318,7 @@ $(call rules,$(call std-build,ffmpeg, twolame lame openjpeg opus \ $(call rules,$(call std-build,fftw)) $(call rules,$(call std-build,flac,libogg)) $(call rules,$(call std-build,giflib)) +$(call rules,$(call std-build,ilmbase)) $(call rules,$(call std-build,ladspa)) $(call rules,$(call std-build,lame)) $(call rules,$(call std-build,libaom)) @@ -338,7 +336,7 @@ $(call rules,$(call std-build,libuuid)) $(call rules,$(call std-build,libvorbis)) $(call rules,$(call std-build,mjpegtools, libjpeg)) $(call rules,$(call std-build,opencv)) -$(call rules,$(call std-build,openexr)) +$(call rules,$(call std-build,openexr, ilmbase)) $(call rules,$(call std-build,openjpeg)) $(call rules,$(call std-build,opus)) $(call rules,$(call std-build,speech_tools)) diff --git a/cinelerra-5.1/thirdparty/downloads.txt b/cinelerra-5.1/thirdparty/downloads.txt index 8bdf6ced..142cc17c 100644 --- a/cinelerra-5.1/thirdparty/downloads.txt +++ b/cinelerra-5.1/thirdparty/downloads.txt @@ -1,7 +1,6 @@ https://www.cybercom.net/~dcoffin/dcraw/dcraw.c http://download-mirror.savannah.gnu.org/releases//openexr/ilmbase-2.2.1.tar.gz http://gnu.mirrors.pair.com/savannah/savannah//openexr/openexr-2.2.1.tar.gz -https://github.com/openexr/openexr/releases/tag/v2.4.0 https://sourceforge.net/projects/opencvlibrary/files/latest/download?source=directory = 3.2.0 #https://sourceforge.net/projects/opencore-amr/files/fdk-aac/fdk-aac-2.2.0.tar.gz/download http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.28.tar.gz diff --git a/cinelerra-5.1/thirdparty/src/openexr-2.4.0.tar.xz b/cinelerra-5.1/thirdparty/src/openexr-2.2.1.tar.xz similarity index 57% rename from cinelerra-5.1/thirdparty/src/openexr-2.4.0.tar.xz rename to cinelerra-5.1/thirdparty/src/openexr-2.2.1.tar.xz index 45745cad..80cc3d60 100644 Binary files a/cinelerra-5.1/thirdparty/src/openexr-2.4.0.tar.xz and b/cinelerra-5.1/thirdparty/src/openexr-2.2.1.tar.xz differ