Hello community, here is the log from the commit of package openrct2 for openSUSE:Factory checked in at 2019-07-17 13:20:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openrct2 (Old) and /work/SRC/openSUSE:Factory/.openrct2.new.1887 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openrct2" Wed Jul 17 13:20:00 2019 rev:2 rq:715593 version:0.2.3 Changes: -------- --- /work/SRC/openSUSE:Factory/openrct2/openrct2.changes 2018-09-15 15:36:42.832966681 +0200 +++ /work/SRC/openSUSE:Factory/.openrct2.new.1887/openrct2.changes 2019-07-17 13:20:13.659642315 +0200 @@ -1,0 +2,28 @@ +Mon Jul 15 20:19:17 UTC 2019 - Ferdinand Thiessen <r...@fthiessen.de> + +- Update to version 0.2.3: + * Rides can now be simulated with ghost trains during construction. + * Multi-threaded rendering. + * Various other bugfixes and improvements. +- Added fix-maybe-uninitialized.patch to fix a gcc warning. +- Added no-werror.patch to build as wno-clobbered does not work +- Install needed object files + * Fixed boo#1120400 +- Splitted optional titlesequences as a subpackage (sequences + which need RCT1 or RCT2 to be installed). +- Update to version 0.2.2: + * Allow steep slopes on the side-friction roller coaster. + * Mulitple glyphs for multiple eastern languages have been added + * Allow building footpaths on 'corner down' terrain. + * Allow building on-ride photos and water S-bends on the Water + Coaster. + * Add replay system. + * No longer require the generic scenery groups and tarmac footpath + to be checked when creating a scenario. + * Client IP address is logged as `(null)` in server logs. + * Fixed crash when switching between languages. + * Fixed desync due to boats colliding with ghost pieces. + * Removed support for scenario text objects. + * Various other bugfixes and improvements + +------------------------------------------------------------------- Old: ---- OpenRCT2-0.2.1.tar.gz objects.zip title-sequence-v0.1.2.zip New: ---- OpenRCT2-0.2.3.tar.gz fix-maybe-uninitialized.patch no-werror.patch objects-1.0.11.tar.gz title-sequences-0.1.2b.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openrct2.spec ++++++ --- /var/tmp/diff_new_pack.NWp7Yp/_old 2019-07-17 13:20:15.971641000 +0200 +++ /var/tmp/diff_new_pack.NWp7Yp/_new 2019-07-17 13:20:15.971641000 +0200 @@ -1,7 +1,7 @@ # # spec file for package openrct2 # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -20,29 +20,31 @@ %ifarch x86_64 %define lib_suffix 64 %endif - +%define title_version 0.1.2 +%define title_version_url %{title_version}b Name: openrct2 -Version: 0.2.1 +Version: 0.2.3 Release: 0 Summary: An open source re-implementation of Roller Coaster Tycoon 2 -License: GPL-3.0 +License: GPL-3.0-only Group: Amusements/Games/Strategy/Other -Url: http://openrct2.website/ +URL: https://openrct2.io/ Source0: https://github.com/OpenRCT2/OpenRCT2/archive/v%{version}/OpenRCT2-%{version}.tar.gz -Source1: https://github.com/OpenRCT2/title-sequences/releases/download/v0.1.2/title-sequence-v0.1.2.zip -Source2: https://github.com/OpenRCT2/objects/releases/download/v1.0.6/objects.zip +Source1: https://github.com/OpenRCT2/title-sequences/archive/v%{title_version_url}/title-sequences-%{title_version_url}.tar.gz +Source2: https://github.com/OpenRCT2/objects/archive/v1.0.11/objects-1.0.11.tar.gz +# PATCH-FIX-UPSTREAM fix-maybe-uninitialized.patch -- Fix a possible issue, which leads to gcc warning about not to be initialized +Patch0: fix-maybe-uninitialized.patch +# PATCH-FIX-OPENSUSE no-werror.patch -- Do not use werror, as wno-clobbered does not work +Patch1: no-werror.patch BuildRequires: cmake >= 3.8 -%if 0%{?suse_version} > 1325 +BuildRequires: fdupes BuildRequires: gcc-c++ >= 6 -%else -BuildRequires: gcc6-c++ -%endif BuildRequires: glibc-devel BuildRequires: hicolor-icon-theme BuildRequires: pkgconfig BuildRequires: shared-mime-info -BuildRequires: unzip BuildRequires: update-desktop-files +BuildRequires: zip BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(icu-uc) >= 59.0 @@ -54,9 +56,7 @@ BuildRequires: pkgconfig(sdl2) BuildRequires: pkgconfig(speexdsp) BuildRequires: pkgconfig(zlib) -Recommends: zenity -# TODO: or KDialog -BuildRoot: %{_tmppath}/%{name}-%{version}-build +Recommends: (kdialog or zenity) %description An open source clone of RollerCoaster Tycoon 2 @@ -65,58 +65,78 @@ where the game_path = "" setting has to be set to a directory into which the original game has been installed to. +%package titlesequences +Summary: Titlesequences for openRCT2 +Group: Amusements/Games/Strategy/Other +Requires: %{name} = %{version} + +%description titlesequences +This package contains tilesequences like the original ones +used in RollerCoaster Tycoon 1 and 2. +When using RCT1 sequences, the original RCT1 files have to be installed. + %prep -%setup -q -n OpenRCT2-%{version} +%setup -q -n OpenRCT2-%{version} -a 1 -a 2 +%patch0 -p1 +%patch1 -p1 # Remove build time references so build-compare can do its work sed -i "s/__DATE__/\"openSUSE\"/" src/openrct2/Version.h sed -i "s/__TIME__/\"Build Service\"/" src/openrct2/Version.h %build -# cmake macro doesn't work https://github.com/OpenRCT2/OpenRCT2/issues/5910 -mkdir build -cd build -cmake -DDOWNLOAD_TITLE_SEQUENCES=OFF -DDOWNLOAD_OBJECTS=OFF \ -%if 0%{?suse_version} < 1325 - -DCMAKE_C_COMPILER=/usr/bin/gcc-6 -DCMAKE_CXX_COMPILER=/usr/bin/g++-6 \ -%endif - -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} -DBUILD_SHARED_LIBS=ON \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo .. -make all g2 +%cmake -DDOWNLOAD_TITLE_SEQUENCES=OFF -DDOWNLOAD_OBJECTS=OFF +make %{?_smp_mflags} all +# libopenrct2 is not installed when openrct2 is called by make, so set the LD_LIBRARY_PATH +export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$(dirname $(find . -name libopenrct2.so))" +make %{?_smp_mflags} g2 +# %%cmake changes directory into "build" +cd .. + +# Generate titles from source (zipping as parkseq) +pushd title-sequences-%{title_version_url}/title + mv -v v%{title_version} openrct2 + rm -rv v* + for dir in *; do + pushd "$dir" + zip -9 -X -r ../"$dir"".parkseq" * + popd + done +popd %install %cmake_install -mkdir -p %{buildroot}%{_datadir}/%{name}/title -pushd %{buildroot}%{_datadir}/%{name}/title - unzip %{SOURCE1} -popd +mkdir -p '%{buildroot}%{_datadir}/%{name}/title' +cp -v title-sequences-%{title_version_url}/title/*.parkseq "%{buildroot}%{_datadir}/%{name}/title" + +mkdir -p '%{buildroot}%{_datadir}/%{name}/object' +cp -vR objects-1.0.11/objects/* '%{buildroot}%{_datadir}/%{name}/object' + +find '%{buildroot}%{_datadir}/%{name}' -type f -exec chmod 644 \{\} \; # We do that in the correct docdir in the files section. rm -rf %{buildroot}%{_datadir}/doc -%post -%desktop_database_post -%icon_theme_cache_post -%mime_database_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun -%mime_database_postun +%fdupes %{buildroot}%{_datadir}/%{name} %files -%defattr(-, root, root) -%doc licence.txt distribution/changelog.txt distribution/readme.txt +%license licence.txt +%doc distribution/changelog.txt distribution/readme.txt %{_bindir}/openrct2 %{_bindir}/openrct2-cli %{_libdir}/libopenrct2.so -%{_mandir}/man6/openrct2.* +%{_mandir}/man6/openrct2.6%{?ext_man} %{_datadir}/openrct2/ +%exclude %{_datadir}/openrct2/title/rct* %{_datadir}/icons/hicolor/*/apps/* %{_datadir}/applications/*.desktop %dir %{_datadir}/metainfo/ %{_datadir}/metainfo/openrct2.appdata.xml %{_datadir}/mime/packages/openrct2.xml +%files titlesequences +%license licence.txt +%{_datadir}/openrct2/title/rct* + %changelog ++++++ OpenRCT2-0.2.1.tar.gz -> OpenRCT2-0.2.3.tar.gz ++++++ /work/SRC/openSUSE:Factory/openrct2/OpenRCT2-0.2.1.tar.gz /work/SRC/openSUSE:Factory/.openrct2.new.1887/OpenRCT2-0.2.3.tar.gz differ: char 15, line 1 ++++++ fix-maybe-uninitialized.patch ++++++ diff -Nur OpenRCT2-0.2.3/src/openrct2/object/LargeSceneryObject.cpp new/src/openrct2/object/LargeSceneryObject.cpp --- OpenRCT2-0.2.3/src/openrct2/object/LargeSceneryObject.cpp 2019-07-10 22:52:26.000000000 +0200 +++ new/src/openrct2/object/LargeSceneryObject.cpp 2019-07-15 22:42:53.278638145 +0200 @@ -263,7 +263,7 @@ const json_t* jGlyph; json_array_foreach(jGlpyhs, index, jGlyph) { - rct_large_scenery_text_glyph glyph; + rct_large_scenery_text_glyph glyph = {}; glyph.image_offset = json_integer_value(json_object_get(jGlyph, "image")); glyph.width = json_integer_value(json_object_get(jGlyph, "width")); glyph.height = json_integer_value(json_object_get(jGlyph, "height")); ++++++ no-werror.patch ++++++ diff -Nur OpenRCT2-0.2.3/CMakeLists.txt new/CMakeLists.txt --- OpenRCT2-0.2.3/CMakeLists.txt 2019-07-10 22:52:26.000000000 +0200 +++ new/CMakeLists.txt 2019-07-15 22:37:42.474039352 +0200 @@ -212,7 +212,7 @@ # Compiler flags set(DEBUG_LEVEL 0 CACHE STRING "Select debug level for compilation. Use value in range 0–3.") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstrict-aliasing -Werror -Wundef -Wmissing-declarations -Winit-self -Wall -Wextra -Wshadow") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstrict-aliasing -Wundef -Wmissing-declarations -Winit-self -Wall -Wextra -Wshadow") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-pragmas -Wno-missing-braces -Wno-comment -Wnonnull -Wno-unused-parameter") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DDEBUG=${DEBUG_LEVEL}")