SHA256
8
0
forked from pool/raylib

Accepting request 799028 from devel:libraries:c_c++

- Switch to noexamples tarball as requested in:
  https://github.com/raysan5/raylib/issues/1180
  So we don't ship examples with various licenses that we don't
  install anyways.
- Add raylib-3.0.0-noexamples.patch: dont try to install examples
  Raysan seems to have forgotten that.

- Added missing development header files.

- Update to 3.0.0:
  * All global variables from the multiple raylib modules have
    been moved to a global context state, it has several benefits, first, better
    code readability with more comprehensive variables naming and categorization
    (organized by types, i.e. CORE.Window.display.width,
    CORE.Input.Keyboard.currentKeyState or RLGL.State.modelview). Second, it allows
    better memory management to load global context state dynamically when required
    (not at the moment), making it easy to implement a hot-reloading mechanism if
    desired.
  * All memory allocations on raylib and its dependencies now use
    RL_MALLOC, RL_FREE and similar macros. Now users can easely hook their own
    memory allocations mechanism if desired, having more control over memory
    allocated internally by the library. Additionally, it makes it easier to port
    the library to embedded devices where memory control is critical. For more info
    check raylib issue #1074.
  * All I/O file accesses from raylib are being moved
    to memory data access, now all I/O file access is centralized into just four
    functions: LoadFileData(), SaveFileData(), LoadFileText(), SaveFileText().
    Users can just update those functions to any I/O file system. This change makes
    it easier to integrate raylib with Virtual File Systems or custom I/O file
    implementations.

OBS-URL: https://build.opensuse.org/request/show/799028
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/raylib?expand=0&rev=6
This commit is contained in:
2020-05-01 09:10:39 +00:00
committed by Git OBS Bridge
5 changed files with 114 additions and 18 deletions

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fa947329975bdc9ea284019f0edc30ca929535dc78dcf8c19676900d67a845ac
size 73808565

View File

@@ -0,0 +1,16 @@
diff -urEbw raylib-3.0.0/CMakeLists.txt raylib-3.0.0.new/CMakeLists.txt
--- raylib-3.0.0/CMakeLists.txt 2020-04-01 11:07:01.000000000 +0200
+++ raylib-3.0.0.new/CMakeLists.txt 2020-04-29 22:12:32.184784329 +0200
@@ -43,12 +43,4 @@
add_subdirectory(src)
-if (${BUILD_EXAMPLES})
- add_subdirectory(examples)
-endif()
-
-if (${BUILD_GAMES})
- add_subdirectory(games)
-endif()
-
enable_testing()

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:be17b6b39bb0e742c0df1e683b49853981854aefa25a758ddcf40f71da8b8436
size 4390778

View File

@@ -1,3 +1,75 @@
-------------------------------------------------------------------
Wed Apr 29 20:15:43 UTC 2020 - Michael Vetter <mvetter@suse.com>
- Switch to noexamples tarball as requested in:
https://github.com/raysan5/raylib/issues/1180
So we don't ship examples with various licenses that we don't
install anyways.
- Add raylib-3.0.0-noexamples.patch: dont try to install examples
Raysan seems to have forgotten that.
-------------------------------------------------------------------
Wed Apr 29 09:59:00 UTC 2020 - Scott Young <dev@iotib.net>
- Added missing development header files.
-------------------------------------------------------------------
Tue Mar 31 09:17:57 UTC 2020 - Michael Vetter <mvetter@suse.com>
- Update to 3.0.0:
* All global variables from the multiple raylib modules have
been moved to a global context state, it has several benefits, first, better
code readability with more comprehensive variables naming and categorization
(organized by types, i.e. CORE.Window.display.width,
CORE.Input.Keyboard.currentKeyState or RLGL.State.modelview). Second, it allows
better memory management to load global context state dynamically when required
(not at the moment), making it easy to implement a hot-reloading mechanism if
desired.
* All memory allocations on raylib and its dependencies now use
RL_MALLOC, RL_FREE and similar macros. Now users can easely hook their own
memory allocations mechanism if desired, having more control over memory
allocated internally by the library. Additionally, it makes it easier to port
the library to embedded devices where memory control is critical. For more info
check raylib issue #1074.
* All I/O file accesses from raylib are being moved
to memory data access, now all I/O file access is centralized into just four
functions: LoadFileData(), SaveFileData(), LoadFileText(), SaveFileText().
Users can just update those functions to any I/O file system. This change makes
it easier to integrate raylib with Virtual File Systems or custom I/O file
implementations.
* All raylib data structures have been reviewed and optimized
for pass-by-value usage. One of raylib distinctive design decisions is that
most of its functions receive and return data by value. This design makes
raylib really simple for newcomers, avoiding pointers and allowing complete
access to all structures data in a simple way. The downside is that data is
copied on stack every function call and that copy could be costly so, all
raylib data structures have been optimized to stay under 64 bytes for fast copy
and retrieve.
* All raylib tracelog messages have been reviewd and categorized
for a more comprehensive output information when developing raylib
applications, now all display, input, timer, platform, auxiliar libraries,
file-accesses, data loading/unloading issues are properly reported with more
detailed and visual messages.
* raudio module has been internally reviewed to
accomodate the new Music structure (converted from previous pointer format) and
the module has been adapted to the highly improved miniaudio v0.10.
* text module reviewed to improve fonts generation and text management functions, Font
structure has been redesigned to better accomodate characters data, decoupling
individual characters as Image glyphs from the font atlas parameters. Several
improvements have been made to better support Unicode strings with UTF-8
encoding.
* Multiple new examples added (most of them contributed by raylib
users) and all examples reviewed for correct execution on most of the supported
platforms, specially Web and Raspberry Pi. A detailed categorized table has
been created on github for easy examples navigation and code access.
* New GitHub Actions CI system has been implemented for Windows, Linux and macOS code
and examples compilation on every new commit or PR to make sure library keeps
stable and usable with no breaking bugs.
* Note that only key changes are
listed here but there is way more! About 30 new functions, multiple functions
reviewed, bindings to +40 programming languages and great
samples/demos/tutorials created by the community, including raylib integration
with Spine, Unity, Tiled, Nuklear, enet and more!
-------------------------------------------------------------------
Fri May 31 09:26:07 UTC 2019 - mvetter@suse.com

View File

@@ -1,7 +1,7 @@
#
# spec file for package raylib
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,18 +12,19 @@
# 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/
#
Name: raylib
Version: 2.5.0
Version: 3.0.0
Release: 0
Summary: C library for learning video game programming
License: Zlib
Group: Development/Libraries/C and C++
URL: http://www.raylib.com
Source: https://github.com/raysan5/raylib/archive/%{version}.tar.gz
Source: https://github.com/raysan5/raylib/releases/download/%{version}/raylib-noexamples-%{version}.tar.gz
Patch0: raylib-3.0.0-noexamples.patch
BuildRequires: Mesa-libGL-devel
BuildRequires: cmake
BuildRequires: gcc-c++
@@ -39,21 +40,22 @@ raylib is inspired by the Borland BGI graphics library and by the XNA framework.
%package -n raylib-devel
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: libraylib2 = %{version}
Requires: libraylib301 = %{version}
Requires: openal-soft-devel
%description -n raylib-devel
Development files and headers for %{name}.
%package -n libraylib2
%package -n libraylib301
Summary: C library for learning video game programming
Group: System/Libraries
%description -n libraylib2
%description -n libraylib301
A C library for learning video game programming.
%prep
%setup -q -n raylib-2.5.0
%setup -q -n raylib-3.0.0
%patch0 -p1
%build
%cmake \
@@ -62,19 +64,25 @@ A C library for learning video game programming.
%install
%cmake_install
#rm %{buildroot}%{_libdir}/libraylib.a
for f in build/src/*.h; do
install -Dm 644 "$f" "$RPM_BUILD_ROOT/usr/include/$(basename $f)"
done
%post -n libraylib2 -p /sbin/ldconfig
%postun -n libraylib2 -p /sbin/ldconfig
%post -n libraylib301 -p /sbin/ldconfig
%postun -n libraylib301 -p /sbin/ldconfig
%files -n libraylib2
%{_libdir}/libraylib.so.2
%{_libdir}/libraylib.so.2.5.0
%files -n libraylib301
%{_libdir}/libraylib.so.301
%{_libdir}/libraylib.so.3.0.0
%files -n raylib-devel
%license LICENSE.md
%license LICENSE
%doc CHANGELOG README.md
%{_includedir}/raylib.h
%{_includedir}/raudio.h
%{_includedir}/physac.h
%{_includedir}/raymath.h
%{_includedir}/rlgl.h
%{_libdir}/libraylib.so
%{_libdir}/pkgconfig/raylib.pc
%{_libdir}/cmake/raylib/