forked from pool/raylib
* 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
82 lines
2.2 KiB
RPMSpec
82 lines
2.2 KiB
RPMSpec
#
|
|
# spec file for package raylib
|
|
#
|
|
# 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
|
|
# 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/
|
|
#
|
|
|
|
|
|
Name: raylib
|
|
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
|
|
BuildRequires: Mesa-libGL-devel
|
|
BuildRequires: cmake
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libXcursor-devel
|
|
BuildRequires: libXi-devel
|
|
BuildRequires: libXinerama-devel
|
|
BuildRequires: libXrandr-devel
|
|
|
|
%description
|
|
A C library for learning video game programming.
|
|
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: libraylib301 = %{version}
|
|
Requires: openal-soft-devel
|
|
|
|
%description -n raylib-devel
|
|
Development files and headers for %{name}.
|
|
|
|
%package -n libraylib301
|
|
Summary: C library for learning video game programming
|
|
Group: System/Libraries
|
|
|
|
%description -n libraylib301
|
|
A C library for learning video game programming.
|
|
|
|
%prep
|
|
%setup -q -n raylib-3.0.0
|
|
|
|
%build
|
|
%cmake \
|
|
-DPLATFORM=Desktop \
|
|
-DSHARED=ON
|
|
|
|
%install
|
|
%cmake_install
|
|
|
|
%post -n libraylib301 -p /sbin/ldconfig
|
|
%postun -n libraylib301 -p /sbin/ldconfig
|
|
|
|
%files -n libraylib301
|
|
%{_libdir}/libraylib.so.301
|
|
%{_libdir}/libraylib.so.3.0.0
|
|
|
|
%files -n raylib-devel
|
|
%license LICENSE
|
|
%doc CHANGELOG README.md
|
|
%{_includedir}/raylib.h
|
|
%{_libdir}/libraylib.so
|
|
%{_libdir}/pkgconfig/raylib.pc
|
|
%{_libdir}/cmake/raylib/
|
|
|
|
%changelog
|