commit 55936a8f197a5a5513ed68693783ccf7a9f27e84fe92c84fb7112d24b04a6f59 Author: Adrian Schröter Date: Fri May 3 13:49:20 2024 +0200 Sync from SUSE:SLFO:Main irrlicht revision b575b744c963cb5b39f4a893b3336984 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/irrlicht-1.7.9.3629-config.patch b/irrlicht-1.7.9.3629-config.patch new file mode 100644 index 0000000..fe9422f --- /dev/null +++ b/irrlicht-1.7.9.3629-config.patch @@ -0,0 +1,31 @@ +Index: include/IrrCompileConfig.h +=================================================================== +--- include/IrrCompileConfig.h (revision 3629) ++++ include/IrrCompileConfig.h (working copy) +@@ -236,7 +236,7 @@ + //! Define _IRR_USE_NON_SYSTEM_JPEG_LIB_ to let irrlicht use the jpeglib which comes with irrlicht. + /** If this is commented out, Irrlicht will try to compile using the jpeg lib installed in the system. + This is only used when _IRR_COMPILE_WITH_LIBJPEG_ is defined. */ +-#define _IRR_USE_NON_SYSTEM_JPEG_LIB_ ++//#define _IRR_USE_NON_SYSTEM_JPEG_LIB_ + #ifdef NO_IRR_USE_NON_SYSTEM_JPEG_LIB_ + #undef _IRR_USE_NON_SYSTEM_JPEG_LIB_ + #endif +@@ -252,7 +252,7 @@ + //! Define _IRR_USE_NON_SYSTEM_LIBPNG_ to let irrlicht use the libpng which comes with irrlicht. + /** If this is commented out, Irrlicht will try to compile using the libpng installed in the system. + This is only used when _IRR_COMPILE_WITH_LIBPNG_ is defined. */ +-#define _IRR_USE_NON_SYSTEM_LIB_PNG_ ++//#define _IRR_USE_NON_SYSTEM_LIB_PNG_ + #ifdef NO_IRR_USE_NON_SYSTEM_LIB_PNG_ + #undef _IRR_USE_NON_SYSTEM_LIB_PNG_ + #endif +@@ -580,7 +580,7 @@ + /** If this is commented out, Irrlicht will try to compile using the zlib + installed on the system. This is only used when _IRR_COMPILE_WITH_ZLIB_ is + defined. */ +-#define _IRR_USE_NON_SYSTEM_ZLIB_ ++//#define _IRR_USE_NON_SYSTEM_ZLIB_ + #ifdef NO_IRR_USE_NON_SYSTEM_ZLIB_ + #undef _IRR_USE_NON_SYSTEM_ZLIB_ + #endif diff --git a/irrlicht-1.8-directionlight.patch b/irrlicht-1.8-directionlight.patch new file mode 100644 index 0000000..bd961e3 --- /dev/null +++ b/irrlicht-1.8-directionlight.patch @@ -0,0 +1,14 @@ +Index: irrlicht-1.8/source/Irrlicht/CLightSceneNode.cpp +=================================================================== +--- irrlicht-1.8.orig/source/Irrlicht/CLightSceneNode.cpp ++++ irrlicht-1.8/source/Irrlicht/CLightSceneNode.cpp +@@ -66,7 +66,8 @@ void CLightSceneNode::render() + + case video::ELT_DIRECTIONAL: + driver->draw3DLine(core::vector3df(0.f, 0.f, 0.f), +- LightData.Direction * LightData.Radius, ++ //LightData.Direction * LightData.Radius, ++ core::vector3df(0.f, 0.f, LightData.Radius), + LightData.DiffuseColor.toSColor()); + break; + default: diff --git a/irrlicht-1.8.5.zip b/irrlicht-1.8.5.zip new file mode 100644 index 0000000..af9cdcc --- /dev/null +++ b/irrlicht-1.8.5.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:effb7beed3985099ce2315a959c639b4973aac8210f61e354475a84105944f3d +size 21827696 diff --git a/irrlicht.changes b/irrlicht.changes new file mode 100644 index 0000000..3d60b19 --- /dev/null +++ b/irrlicht.changes @@ -0,0 +1,128 @@ +------------------------------------------------------------------- +Sat Nov 27 12:26:32 UTC 2021 - Dirk Müller + +- update to 1.8.5: + * Fix some aes compile warnings on gcc about fall-throughs. + * No longer include sys/sysctl.h on other platforms than OSX. Fixes compile + errors in COSOperator on newer Linux systems. + * Update script to generate tutorial.html's in example folders. + * Update libpng to 1.6.37 (from 1.6.23) + * Fix CIrrDeviceSDL::getVideoModeList which didn't return video modes before. + * CIrrDeviceMacOSX now sets the SEvent.MouseInput Shift and Control values on + mouse events like the other devices. + * isWindowFocused in IrrDeviceSDL device now returns the input focus like the + other devices. Before it was returning a mouse-over-window state. + * Prevent SDL device from dropping OpenGL resources on Win32 when + setResizable was called with OpenGL driver. + * Fix isWindowActive when using SDL device. Before it was only active when + the mouse was over the window. + * Fix SViewFrustum::clipLine. Was before clipping at wrong points + * Fix compilation on OSX and prevent capturing mouse cursor when Window is not on top + * Fix serialization of OverrideTextColorEnabled flag in CGUITab. + * CFileSystem::getAbsolutePath no longer wrongly converts an empty filename + to "/" on unix platforms. + * Fix bug in cursor positions when compiled with newer Windows SDK's (v110 in + VS2012) and running on Systems >= Windows Vista in windowed mode. + * IOSOperator::getSysteMemory() no longer returns incorrect values with >2GB. + * Increase KEY_KEY_CODES_COUNT to fix problem with laptop keyboards which + return the keycode 0xff for the function key. + * Fix bug when calling activateJoysticks on windows several times. It had + appened joystick information instead of replacing it, thereby increasing + joystick number on each call. + * Fix bug in fast_atof when reading floating point numbers with more than 16 + digits past the dot. Those produced completely wrong results + * Accuracy of fast_atof is back to older Irrlicht versions (fixes test + warnings, usually not a noticable problem). + * Fix crash in eventhandling when calling remove() on a contextmenu while it + has focus. + * CImageLoaderJPG::isALoadableFileFormat uses a test which allows to load + more jpg formats (for example uncompressed jpg's). Thx @Yaron Cohen-Tal for + report, test-image and his help with the patch. +- drop irrlicht-1.8.4-remove-sys-sysctl.h.patch (merged upstream) + +------------------------------------------------------------------- +Fri Feb 19 09:57:22 UTC 2021 - Dirk Stoecker + +- fix build (irrlicht-1.8.4-remove-sys-sysctl.h.patch) +- fix library link versions + +------------------------------------------------------------------- +Wed Feb 14 15:27:32 UTC 2018 - crrodriguez@opensuse.org + +- Do not BuildRequire xorg-x11-devel or Mesa-devel + metapackages. +- Fix -devel package requires too. + +------------------------------------------------------------------- +Sat Dec 31 03:09:29 UTC 2016 - khyota@redhyena.net + +- Update to 1.8.4 +- Removed aes.patch and fix-sha2-gcc6.patch. Fixed upstream. + +------------------------------------------------------------------- +Wed Jul 27 08:15:10 UTC 2016 - jengelh@inai.de + +- Update description + +------------------------------------------------------------------- +Thu Jun 30 20:10:24 UTC 2016 - rpm@fthiessen.de + +- Added fix-sha2-gcc6.patch for fixing build with gcc6 + on Tumbleweed + +------------------------------------------------------------------- +Tue Dec 1 19:35:20 UTC 2015 - khyota@redhyena.net + +- Build version 1.8.3 + +------------------------------------------------------------------- +Thu Sep 3 20:28:00 UTC 2015 - khyota@redhyena.net + +- Build version 1.8.2 +- Removed irrlicht-replace-glext-header-file.patch fixed in this release. + +------------------------------------------------------------------- +Mon Dec 8 18:55:08 UTC 2014 - malcolmlewis@opensuse.org + +- Add irrlicht-replace-glext-header-file.patch -- Incorrect glext.h + shipped in release, see . + +------------------------------------------------------------------- +Wed Feb 5 23:01:38 UTC 2014 - mailaender@opensuse.org + +- Removed irrlicht-1.8-glviewport.patch + fixes https://github.com/minetest/minetest/issues/474 + +------------------------------------------------------------------- +Sat Nov 23 22:40:22 UTC 2013 - joop.boonen@opensuse.org + +- Build version 1.8.1 + +------------------------------------------------------------------- +Wed Dec 12 11:43:31 UTC 2012 - Rene.vanPaassen@gmail.com + +- added directionlight and glviewport patches. Based on work by + Herman Damveld + +------------------------------------------------------------------- +Tue Dec 11 23:01:03 UTC 2012 - joop.boonen@opensuse.org + +- Build version 1.8 + +------------------------------------------------------------------- +Sun Jul 29 12:05:49 UTC 2012 - bwiedemann@suse.com + +- use fallback values to prevent segfaults + https://sourceforge.net/tracker/?func=detail&aid=3551476&group_id=74339&atid=540678 + +------------------------------------------------------------------- +Thu Dec 16 10:54:16 UTC 2010 - dimstar@opensuse.org + +- Packaged irrlicht 1.7.2 +- Restructured the .spec file, having the package called irrlicht. +- Link GL, zlib, libpng and libjpeg; otherwise apps linking + irrlicht would need to take care of this, which is wrong. +- Spec file is based on Fedora's work. + + diff --git a/irrlicht.spec b/irrlicht.spec new file mode 100644 index 0000000..5655d7b --- /dev/null +++ b/irrlicht.spec @@ -0,0 +1,158 @@ +# +# spec file for package irrlicht +# +# Copyright (c) 2021 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +# +%define sover 1_8 +%define libver 1.8 +Name: irrlicht +Version: 1.8.5 +Release: 0 +Summary: A realtime 3D engine +License: Zlib +Group: Development/Libraries/C and C++ +URL: https://irrlicht.sourceforge.io/ +Source0: https://downloads.sourceforge.net/irrlicht/%{name}-%{version}.zip +# PATCH-FIX-OPENSUSE irrlicht-1.7.9.3629-config.patch -- use system libraries http://irrlicht.sourceforge.net/phpBB2/viewtopic.php?t=24076 +Patch0: irrlicht-1.7.9.3629-config.patch +# PATCH-FIX-UPSTREAM irrlicht-1.8-directionlight.patch +Patch1: irrlicht-1.8-directionlight.patch +BuildRequires: fdupes +BuildRequires: gcc-c++ +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: unzip +BuildRequires: zlib-devel +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xxf86vm) +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +The Irrlicht Engine is a realtime 3D engine written and usable in C++ +and also available for .NET languages. It is using Direct3D, OpenGL +and its own software renderer, and has features which can be found in +commercial 3D engines, some of which are: +* Built-in and extensible material library with vertex, pixel, and + geometry shader support +* Character animation system with skeletal and morph target animation. +* Particle effects, billboards, light maps, environment mapping, + stencil buffer shadows, and lots of other special effects. +* Direct import of common mesh file formats: Maya (.obj), 3DStudio + (.3ds), COLLADA (.dae), Blitz3D (.b3d), Milkshape (.ms3d), Quake 3 + levels (.bsp), Quake2 models (.md2), Microsoft DirectX (.X)… + +%package devel +Summary: Development headers and libraries for irrlicht +Group: Development/Libraries/C and C++ +Requires: libIrrlicht%{sover} = %{version} +Requires: libstdc++-devel + +%description devel +Development headers and libraries for irrlicht. + +The Irrlicht Engine is a realtime 3D engine written and usable in C++ +and also available for .NET languages. It is using Direct3D, OpenGL +and its own software renderer, and has features which can be found in +commercial 3D engines. + +%package data +Summary: Assorted data for irrlicht +Group: Development/Libraries/C and C++ + +%description data +Data files for irrlicht applications + +The Irrlicht Engine is a realtime 3D engine written and usable in C++ +and also available for .NET languages. It is using Direct3D, OpenGL +and its own software renderer, and has features which can be found in +commercial 3D engines. + +%package -n libIrrlicht%{sover} +Summary: A high performance realtime 3D engine +Group: System/Libraries + +%description -n libIrrlicht%{sover} +The Irrlicht Engine is a realtime 3D engine written and usable in C++ +and also available for .NET languages. It is using Direct3D, OpenGL +and its own software renderer, and has features which can be found in +commercial 3D engines. + +%prep +%setup -q +%patch0 +%patch1 -p1 + +sed -i 's/\r//' readme.txt +iconv -o readme.txt.iso88591 -f iso88591 -t utf8 readme.txt +mv readme.txt.iso88591 readme.txt +# We don't use any of this. Deleting it to be sure we are using system headers +rm -rf source/Irrlicht/jpeglib source/Irrlicht/zlib source/Irrlicht/libpng +for i in include/*.h doc/upgrade-guide.txt source/Irrlicht/*.cpp source/Irrlicht/*.h; do + sed -i 's/\r//' $i + chmod -x $i + touch -r changes.txt $i +done + +%build +cd source/Irrlicht +make %{?_smp_mflags} CFLAGS="%{optflags} -fno-strict-aliasing -fPIC" \ + ZLIBOBJ= JPEGLIBOBJ= LIBPNGOBJ= \ + CIrrDeviceLinux.cpp +make %{?_smp_mflags} \ + CFLAGS="%{optflags} -fstrict-aliasing -fPIC" \ + CXXFLAGS="%{optflags} -fstrict-aliasing -fno-exceptions -fno-rtti -fPIC" \ + ZLIBOBJ= JPEGLIBOBJ= LIBPNGOBJ= \ + LDFLAGS="-lz -ljpeg -lpng $(pkg-config --libs gl xxf86vm xext x11)" \ + sharedlib + +%install +mkdir -p %{buildroot}%{_libdir} +mkdir -p %{buildroot}%{_includedir}/irrlicht +make -C source/Irrlicht INSTALL_DIR=%{buildroot}%{_libdir} install \ + ZLIBOBJ= JPEGLIBOBJ= LIBPNGOBJ= +# Cleaning up after the really bad installer... +pushd %{buildroot}%{_libdir} +ln -s -f libIrrlicht.so.%{version} libIrrlicht.so.%{libver} +ln -s -f libIrrlicht.so.%{libver} libIrrlicht.so +popd +# End Makefile mess cleanup +install -d %{buildroot}%{_datadir}/irrlicht +cp -r media %{buildroot}%{_datadir}/irrlicht + +%fdupes %{buildroot}%{_includedir} + +%post -n libIrrlicht%{sover} -p /sbin/ldconfig +%postun -n libIrrlicht%{sover} -p /sbin/ldconfig + +%files -n libIrrlicht%{sover} +%defattr(-,root,root,-) +%doc readme.txt +%{_libdir}/libIrrlicht.so.* + +%files devel +%defattr(-,root,root,-) +%doc doc/upgrade-guide.txt +%{_includedir}/irrlicht/ +%{_libdir}/libIrrlicht.so + +%files data +%defattr(-,root,root,-) +%{_datadir}/irrlicht + +%changelog