SHA256
1
0
forked from pool/raylib

- 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

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/raylib?expand=0&rev=20
This commit is contained in:
Michael Vetter 2020-03-31 09:29:16 +00:00 committed by Git OBS Bridge
parent e22a601e3e
commit 7feee2e499
4 changed files with 74 additions and 17 deletions

View File

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

3
3.0.0.tar.gz Normal file
View File

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

View File

@ -1,3 +1,61 @@
-------------------------------------------------------------------
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,12 +12,12 @@
# 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
@ -39,21 +39,21 @@ 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
%build
%cmake \
@ -62,17 +62,16 @@ A C library for learning video game programming.
%install
%cmake_install
#rm %{buildroot}%{_libdir}/libraylib.a
%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
%{_libdir}/libraylib.so