diff --git a/gnustep-make-2.8.0.tar.gz b/gnustep-make-2.8.0.tar.gz new file mode 100644 index 0000000..87b9ec8 Binary files /dev/null and b/gnustep-make-2.8.0.tar.gz differ diff --git a/gnustep-make-macros.gnustep b/gnustep-make-macros.gnustep new file mode 100644 index 0000000..b4447ff --- /dev/null +++ b/gnustep-make-macros.gnustep @@ -0,0 +1,50 @@ +%gnustep_libdir %{_libdir}/GNUstep + +%gnustep_appdir %{gnustep_libdir}/Applications +%gnustep_appsupdir %{gnustep_libdir}/ApplicationSupport +%gnustep_bundledir %{gnustep_libdir}/Bundles +%gnustep_cpickdir %{gnustep_libdir}/ColorPickers +%gnustep_srvdir %{gnustep_libdir}/Services + +%gnustep_makefiles %{gnustep_libdir}/Makefiles +%gnustep_additional %{gnustep_libdir}/Makefiles/Additional +%gnustep_libraries %{gnustep_libdir}/Libraries + +%gnustep_docdir %{gnustep_libdir}/Documentation +%gnustep_devdocdic %{gnustep_docdir}/Development +%gnustep_userdocdir %{gnustep_docdir}/User +%gnustep_dtddir %{gnustep_libdir}/DTDs +%gnustep_fontdir %{gnustep_libdir}/Fonts +%gnustep_imagedir %{gnustep_libdir}/Images +%gnustep_kbdir %{gnustep_libdir}/KeyBindings +%gnustep_psdir %{gnustep_libdir}/PostScript +%gnustep_sounddir %{gnustep_libdir}/Sounds + +%gnustep_configure\ +%configure --with-installation-domain=SYSTEM + +%gnustep_make(n) make %{?_smp_mflags} \\\ +%if "X%{-n:Y}" == "X" \ + GNUSTEP_MAKEFILES=%{gnustep_makefiles} \\\ +%endif\ + messages=yes + +%gnustep_makedoc\ +make -C Documentation %{?_smp_mflags} messages=yes \\\ + GNUSTEP_MAKEFILES=%{gnustep_makefiles} + +%gnustep_install(n)\ +make install messages=yes \\\ + DESTDIR=%{buildroot} \\\ +%if "X%{-n:Y}" == "X" \ + GNUSTEP_MAKEFILES=%{gnustep_makefiles} \\\ +%endif \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM + +%gnustep_install_without_gnustep_makefiles() %gnustep_install -n + +%gnustep_installdoc\ +make -C Documentation install messages=yes \\\ + DESTDIR=%{buildroot} \\\ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \\\ + GNUSTEP_MAKEFILES=%{gnustep_makefiles} diff --git a/gnustep-make.spec b/gnustep-make.spec new file mode 100644 index 0000000..545a5e1 --- /dev/null +++ b/gnustep-make.spec @@ -0,0 +1,92 @@ +%global debug_package %{nil} +%define _legacy_common_support 1 +%global _lto_cflags %nil +%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || +d=%{_sysconfdir}/rpm; echo $d) +Name: gnustep-make +Version: 2.8.0 +Release: 1 +Summary: GNUstep makefile package +License: GPLv3+ +URL: http://www.gnustep.org/ +Source0: ftp://ftp.gnustep.org/pub/gnustep/core/%{name}-%{version}.tar.gz +Source1: %{name}-macros.gnustep +BuildRequires: gcc-objc texinfo-tex tetex-latex tetex-dvips latex2html texi2html make +Requires: gnustep-filesystem%{?_isa} = %{version}-%{release} +%description +The makefile package is a simple, powerful and extensible way to write +makefiles for a GNUstep-based project. It allows the user to write a +project without having to deal with the complex issues associated with +configuration, building, installation, and packaging. It also allows +the user to easily create cross-compiled binaries. + +%package -n gnustep-filesystem +Summary: The basic directory layout for GNUstep packages +License: Public Domain +%description -n gnustep-filesystem +The gnustep-filesystem package contains the basic directory layout for +GNUstep packages. + +%package doc +Summary: Documentation for %{name} +License: GPLv3+ +BuildArch: noarch +Requires: gnustep-filesystem = %{version}-%{release} +%description doc +The makefile package is a simple, powerful and extensible way to write +makefiles for a GNUstep-based project. It allows the user to write a +project without having to deal with the complex issues associated with +configuration, building, installation, and packaging. It also allows +the user to easily create cross-compiled binaries. +This package contains documentation for %{name}. + +%prep +%autosetup +cp %{SOURCE1} macros.gnustep +sed -i "s|/lib/|/%{_lib}/|g" FilesystemLayouts/fhs-system +sed -i "s|/lib$|/%{_lib}|g" FilesystemLayouts/fhs-system +sed -i "s|/lib/|/%{_lib}/|g" FilesystemLayouts/fhs +sed -i "s|/lib$|/%{_lib}|g" FilesystemLayouts/fhs +sed -i "s|=/share/GNUstep/Makefiles|=/%{_lib}/GNUstep/Makefiles|" \ + FilesystemLayouts/fhs-system + +%build +%configure --with-layout=fhs-system --enable-flattened +%make_build V=1 + +%install +%make_install +make -C Documentation GNUSTEP_MAKEFILES=%{buildroot}%{_libdir}/GNUstep/Makefiles +make -C Documentation install GNUSTEP_MAKEFILES=%{buildroot}%{_libdir}/GNUstep/Makefiles DESTDIR=%{buildroot} +for i in Applications WebApplications; do + mkdir -p %{buildroot}%{_prefix}{,/local}/lib{,64}/GNUstep/$i +done +mkdir -p %{buildroot}%{_prefix}{,/local}/share/GNUstep/Documentation/Developer +install -d %{buildroot}%{macrosdir} +install -p -m 644 macros.gnustep %{buildroot}%{macrosdir} + +%files +%config(noreplace) %{_sysconfdir}/GNUstep/GNUstep.conf +%{_bindir}/* +%{_libdir}/GNUstep/Makefiles +%{_mandir}/man*/* +%{_infodir}/*.info.* +%{macrosdir}/macros.gnustep + +%files -n gnustep-filesystem +%doc ANNOUNCE FAQ NEWS README +%license COPYING +%dir %{_sysconfdir}/GNUstep +%dir %{_libdir}/GNUstep +%dir %{_libdir}/GNUstep/Applications +%dir %{_libdir}/GNUstep/WebApplications +%dir %{_datadir}/GNUstep +%dir %{_datadir}/GNUstep/Documentation +%dir %{_datadir}/GNUstep/Documentation/Developer + +%files doc +%doc %{_datadir}/GNUstep/Documentation/* + +%changelog +* Tue Sep 7 2021 zhengyaohui - 2.8.0-1 +- package init