diff --git a/gnustep-base-1.27.0.tar.gz b/gnustep-base-1.27.0.tar.gz new file mode 100644 index 0000000..cccae5f Binary files /dev/null and b/gnustep-base-1.27.0.tar.gz differ diff --git a/gnustep-base-use_system-wide_crypto-policies.patch b/gnustep-base-use_system-wide_crypto-policies.patch new file mode 100644 index 0000000..113d431 --- /dev/null +++ b/gnustep-base-use_system-wide_crypto-policies.patch @@ -0,0 +1,30 @@ +--- a/Source/GSTLS.orig.m 2016-03-09 14:16:16.000000000 +0100 ++++ b/Source/GSTLS.m 2016-08-21 16:46:41.347996519 +0200 +@@ -1745,8 +1745,7 @@ + 0 }; + gnutls_protocol_set_priority(session, proto_prio); + #else +- gnutls_priority_set_direct(session, +- "NORMAL:-VERS-SSL3.0:+VERS-TLS-ALL", NULL); ++ gnutls_set_default_priority (session); + #endif + } + else +@@ -1757,7 +1756,7 @@ + /* By default we disable SSL3.0 as the 'POODLE' attack (Oct 2014) + * renders it insecure. + */ +- gnutls_priority_set_direct(session, "NORMAL:-VERS-SSL3.0", NULL); ++ gnutls_set_default_priority (session); + #endif + } + } +@@ -1774,7 +1773,7 @@ + { + NSLog(@"Invalid GSTLSPriority: %s", err_pos); + NSLog(@"Falling back to NORMAL:-VERS-SSL3.0"); +- gnutls_priority_set_direct(session, "NORMAL:-VERS-SSL3.0", NULL); ++ gnutls_set_default_priority (session); + } + #endif + } diff --git a/gnustep-base.spec b/gnustep-base.spec new file mode 100644 index 0000000..9c4adf4 --- /dev/null +++ b/gnustep-base.spec @@ -0,0 +1,110 @@ +Name: gnustep-base +Version: 1.27.0 +Release: 1 +License: GPLv3+ and LGPLv2+ +Summary: GNUstep Base library package +URL: http://www.gnustep.org/ +Source0: ftp://ftp.gnustep.org/pub/gnustep/core/%{name}-%{version}.tar.gz +Patch0: %{name}-use_system-wide_crypto-policies.patch +BuildRequires: gcc-objc libffi-devel >= 3.0.9 gnutls-devel libxml2-devel libxslt-devel +BuildRequires: pkgconfig gnustep-make >= 2.0.0 avahi-compat-libdns_sd-devel gmp-devel +BuildRequires: texi2html texinfo-tex libicu-devel texi2html +Requires: %{name}-libs%{?_isa} = %{version}-%{release} make +Conflicts: libFoundation +%description +The GNUstep Base Library is a powerful fast library of general-purpose, +non-graphical Objective C classes, inspired by the superb OpenStep API but +implementing Apple and GNU additions to the API as well. It includes for +example classes for unicode strings, arrays, dictionaries, sets, byte +streams, typed coders, invocations, notifications, notification dispatchers, +scanners, tasks, files, networking, threading, remote object messaging +support (distributed objects), event loops, loadable bundles, attributed +unicode strings, xml, mime, user defaults. This package includes development +headers too. + +%package libs +Summary: GNUStep Base Libraries +%description libs +This packages contains the run-time libraries of the gnustep-base package. + +%package devel +Summary: Header of the GNUstep Base library packes +Requires: %{name}-libs%{?_isa} = %{version}-%{release} +%description devel +This package contains the header files of the gnustep-base package. + +%package doc +Summary: Documentation for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} gnustep-filesystem +%description doc +This package contains the documentation of the gnustep-base package. + +%prep +%autosetup -p1 +iconv -f iso-8859-1 -t utf-8 ChangeLog.2 -o ChangeLog.2.utf8 +mv ChangeLog.2.utf8 ChangeLog.2 + +%build +ffi_include=$(pkg-config --cflags-only-I libffi | sed -e 's/^\-\I//') +export LDFLAGS="%{__global_ldflags} -Wl,--as-needed" +%gnustep_configure --disable-ffcall --with-ffi-include=$ffi_include +%gnustep_make -n + +%install +%gnustep_install -n +mv ${RPM_BUILD_ROOT}%{_bindir}/pl ${RPM_BUILD_ROOT}%{_bindir}/pllist +rm -f Examples/.cvsignore +rm -f Examples/.gdbinit +sed -e "s|GNUSTEP_SYSTEM_LIBRARY=|GNUSTEP_SYSTEM_LIBRARY=$RPM_BUILD_ROOT|" \ + -e "s|GNUSTEP_SYSTEM_HEADERS=|GNUSTEP_SYSTEM_HEADERS=$RPM_BUILD_ROOT|" \ + %{_sysconfdir}/GNUstep/GNUstep.conf >GNUstep.conf +export LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir} +export GNUSTEP_CONFIG_FILE=$(pwd)/GNUstep.conf +%gnustep_makedoc +%gnustep_installdoc +%ldconfig_scriptlets libs + +%files +%{_bindir}/HTMLLinker +%{_bindir}/autogsdoc +%{_bindir}/cvtenc +%{_bindir}/defaults +%{_bindir}/gdnc +%{_bindir}/gdomap +%{_bindir}/gspath +%{_bindir}/make_strings +%{_bindir}/pl2link +%{_bindir}/pldes +%{_bindir}/plget +%{_bindir}/pllist +%{_bindir}/plmerge +%{_bindir}/plparse +%{_bindir}/plser +%{_bindir}/sfparse +%{_bindir}/xmlparse +%{_mandir}/man1/* +%{_mandir}/man8/* +%{gnustep_dtddir}/ + +%files libs +%doc ANNOUNCE ChangeLog* NEWS README +%license COPYING.LIB COPYINGv3 +%{gnustep_libraries}/ +%{_libdir}/libgnustep-base.so.* + +%files devel +%{_includedir}/Foundation/ +%{_includedir}/GNUstepBase/ +%{_libdir}/libgnustep-base.so +%{gnustep_additional}/base.make +%doc Examples + +%files doc +%doc README +%{_infodir}/* +%dir %{_datadir}/GNUstep/Documentation +%{_datadir}/GNUstep/Documentation/* + +%changelog +* Tue Sep 7 2021 zhengyaohui - 1.27.0-1 +- package init