angelscript/angelscript.spec
Dirk Stoecker 970c41de2b Accepting request 879480 from home:alois:branches:games
- Update to version 2.35.0
  Bug fixes:
  * asIScriptModule::GetGlobalVar was returning asSUCCESS when
    the given index was out of range
  * Compiler would give an error when compiling functions
    returning a reference to a type that cannot be instantiated
  * Fixed problem with LoadByteCode and shared classes
  * Fixed crash when using copy constructor declared as taking
    the object by value
  * Fixed memory invasion in compiler when compiling
    initialization lists with expressions using default arguments
  * Fixed memory invasion in compiler when compiling default
    arguments
  * Fixed an issue in compiler with auto type and constness
  * Fixed symbol lookup of child type from within class method
    while compiling a construct call
  * Fixed crash after a discarding a module that compiled a
    shared object type that continues to be used by other modules
  * Funcdefs are marked with asOBJ_GC as they can form circular
    references when used with delegates
  * Fixed memory leak when using CompileGlobalVar to add a
    variable to a module with an object type
  * Fixed error when loading bytecode that is using a list
    constructor for a value type
  * Fixed memory invasion in compiler when compiling default
    argument after an argument with index operator 
  Library:
  * asIScriptModule::GetFunctionByName now supports informing
    the scope in the name
  * asIScriptModule::GetGlobalVarByName and GetTypeInfoByName
    also support informing the scope in the name
  * asIScriptEngine::GetTypeInfoByName and
    GetGlobalPropertyIndexByName also support informing the scope in
    the name
  * The default opAssign implementation for script classes will
    use the base class' opAssign method to copy inherited properties
  * Added config for 64bit x86 CPU on Haiku OS
  * Added flag asOBJ_APP_CLASS_MORE_CONSTRUCTORS to inform when
    a class with defaulted constructors has additional non-trivial
    constructors
  * Added support for native calling conventions on Linux with
    ARM64
  * Improved time for compilation and loading pre-compiled
    bytecode for scripts with lots of type definitions
  * Added config to make the library buildable for Linux with
    Elbrus 2000 CPU 
  Library interface:
  * asIScriptObject::CopyFrom now takes a const pointer
  * RegisterGlobalProperty and RegisterObjectProperty now return
    the index of the property upon success 
  Virtual machine:
  * asBC_Thiscall1 bytecode instruction is now capable of
    catching and translating C++ exceptions to script exceptions 
  Add-ons & Samples:
  * Implemented to-string debug callback for datetime in asrun
  * Fixed a problem due to daylight time when initializing a
    datetime object with specific date
  * debugger add-on handles incorrect user commands better
  * Implemented a version of exec for asrun sample that captures
    the standard output from the system command into a string
  * Implemented getCreateDateTime and getModifyDateTime on the
    filesystem add-on
  * Improved performance on array sort for arrays holding object
    types
  * Fixed registration of the virtual property accessors in the
    game sample
  * Fixed compilation error in scriptstdstring.cpp with
    AS_USE_NAMESPACE
  * Registered the script array add-on in the console sample
  * Added generic calling convention bindings for datetime and
    filesystem add-ons 
  Project:
  * Fixed gnuc makefile to detect arm target and add a compiler
    flag to accept implicit IT constructs in thumb mode 
- Use https for source URL 
- Switch build to meson
- Add angelscript-addons_lib.patch
- Add pkgconfig support file
- Build addons library and install related headers
- Add angelscript_addons library subpackage
- Move docs to -devel and drop main package

OBS-URL: https://build.opensuse.org/request/show/879480
OBS-URL: https://build.opensuse.org/package/show/games/angelscript?expand=0&rev=15
2021-03-17 07:30:36 +00:00

155 lines
5.2 KiB
RPMSpec

#
# spec file for package angelscript
#
# 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 2_35_0
Name: angelscript
Version: 2.35.0
Release: 0
Summary: Scripting library
License: Zlib
Group: Development/Libraries/C and C++
URL: https://www.angelcode.com/angelscript/
Source: https://www.angelcode.com/angelscript/sdk/files/%{name}_%{version}.zip
# PATCH-FEATURE-OPENSUSE angelscript-addons_lib.patch aloisio@gmx.com -- build and install addons library
Patch0: angelscript-addons_lib.patch
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: meson >= 0.49.0
BuildRequires: pkgconfig
BuildRequires: unzip
%description
The AngelCode Scripting Library, or AngelScript as it is also known,
is a scripting library designed to allow applications to extend their
functionality through external scripts.
It supports Unix sockets and TCP/IP sockets with optional
SSL/TLS support.
%package -n lib%{name}%{sover}
Summary: Scripting library
Group: System/Libraries
%description -n lib%{name}%{sover}
The AngelCode Scripting Library, or AngelScript as it is also known,
is a scripting library designed to allow applications to extend their
functionality through external scripts.
It supports Unix sockets and TCP/IP sockets with optional
SSL/TLS support.
%package -n lib%{name}_addons%{sover}
Summary: Scripting library
Group: System/Libraries
%description -n lib%{name}_addons%{sover}
The AngelCode Scripting Library, or AngelScript as it is also known,
is a scripting library designed to allow applications to extend their
functionality through external scripts.
It supports Unix sockets and TCP/IP sockets with optional
SSL/TLS support.
%package devel
Summary: Development files for AngelScript
Group: Development/Libraries/C and C++
Requires: lib%{name}%{sover} = %{version}
Requires: lib%{name}_addons%{sover} = %{version}
%description devel
The AngelCode Scripting Library, or AngelScript as it is also known,
is a scripting library designed to allow applications to extend their
functionality through external scripts.
This subpackage contains libraries and header files for developing
applications that want to make use of the AngelScript library.
%prep
%autosetup -p1 -n sdk
%build
pushd %{name}/projects/meson
%meson
%meson_build
popd
%install
pushd %{name}/projects/meson
%meson_install
popd
mv docs html
%post -n lib%{name}%{sover} -p /sbin/ldconfig
%postun -n lib%{name}%{sover} -p /sbin/ldconfig
%post -n lib%{name}_addons%{sover} -p /sbin/ldconfig
%postun -n lib%{name}_addons%{sover} -p /sbin/ldconfig
%files -n lib%{name}%{sover}
%{_libdir}/libangelscript.so.*
%files -n lib%{name}_addons%{sover}
%{_libdir}/libangelscript_addons.so.*
%files devel
# manual also contains the license
%doc html
%dir %{_includedir}/AngelScript
%dir %{_includedir}/AngelScript/autowrapper
%dir %{_includedir}/AngelScript/contextmgr
%dir %{_includedir}/AngelScript/datetime
%dir %{_includedir}/AngelScript/debugger
%dir %{_includedir}/AngelScript/scriptany
%dir %{_includedir}/AngelScript/scriptarray
%dir %{_includedir}/AngelScript/scriptbuilder
%dir %{_includedir}/AngelScript/scriptdictionary
%dir %{_includedir}/AngelScript/scriptfile
%dir %{_includedir}/AngelScript/scriptgrid
%dir %{_includedir}/AngelScript/scripthandle
%dir %{_includedir}/AngelScript/scripthelper
%dir %{_includedir}/AngelScript/scriptmath
%dir %{_includedir}/AngelScript/scriptstdstring
%dir %{_includedir}/AngelScript/serializer
%dir %{_includedir}/AngelScript/weakref
%{_includedir}/AngelScript/angelscript.h
%{_includedir}/AngelScript/autowrapper/aswrappedcall.h
%{_includedir}/AngelScript/contextmgr/contextmgr.h
%{_includedir}/AngelScript/datetime/datetime.h
%{_includedir}/AngelScript/debugger/debugger.h
%{_includedir}/AngelScript/scriptany/scriptany.h
%{_includedir}/AngelScript/scriptarray/scriptarray.h
%{_includedir}/AngelScript/scriptbuilder/scriptbuilder.h
%{_includedir}/AngelScript/scriptdictionary/scriptdictionary.h
%{_includedir}/AngelScript/scriptfile/scriptfile.h
%{_includedir}/AngelScript/scriptfile/scriptfilesystem.h
%{_includedir}/AngelScript/scriptgrid/scriptgrid.h
%{_includedir}/AngelScript/scripthandle/scripthandle.h
%{_includedir}/AngelScript/scripthelper/scripthelper.h
%{_includedir}/AngelScript/scriptmath/scriptmath.h
%{_includedir}/AngelScript/scriptmath/scriptmathcomplex.h
%{_includedir}/AngelScript/scriptstdstring/scriptstdstring.h
%{_includedir}/AngelScript/serializer/serializer.h
%{_includedir}/AngelScript/weakref/weakref.h
%{_libdir}/libangelscript.so
%{_libdir}/libangelscript_addons.so
%{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/pkgconfig/%{name}_addons.pc
%changelog