Accepting request 396466 from Base:System
Newlib is a C standard library, used both for some embedded targets and as intermediate step for building glibc or uClibc cross-compilers. This package serves as source package for deriving target-specific cross-*-newlib-devel packages. gcc5/gcc6 packages have already been prepared for this cross dependency. OBS-URL: https://build.opensuse.org/request/show/396466 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/newlib?expand=0&rev=1
This commit is contained in:
commit
b051699953
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
13
epiphany-fixes.diff
Normal file
13
epiphany-fixes.diff
Normal file
@ -0,0 +1,13 @@
|
||||
Index: newlib-2.1.0/libgloss/epiphany/Makefile.in
|
||||
===================================================================
|
||||
--- newlib-2.1.0.orig/libgloss/epiphany/Makefile.in
|
||||
+++ newlib-2.1.0/libgloss/epiphany/Makefile.in
|
||||
@@ -184,7 +184,7 @@ distclean maintainer-clean realclean: cl
|
||||
install:
|
||||
@for outputs in ${OUTPUTS}; do\
|
||||
mkdir -p $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \
|
||||
- $(INSTALL_PROGRAM) $${outputs} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \
|
||||
+ $(INSTALL_DATA) $${outputs} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \
|
||||
done
|
||||
info:
|
||||
install-info:
|
3
newlib-2.4.0.tar.gz
Normal file
3
newlib-2.4.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:545b3d235e350d2c61491df8b9f775b1b972f191380db8f52ec0b1c829c52706
|
||||
size 17574364
|
66
newlib.changes
Normal file
66
newlib.changes
Normal file
@ -0,0 +1,66 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue May 17 17:55:35 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Drop newlib-rpmlintrc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 14 00:18:57 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Apply epiphany-fixes.diff not only to cross builds (.spec.in) but
|
||||
also in newlib.spec, to please factory-auto checker (sr#395228)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri May 13 16:57:05 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Prepare rl78 target
|
||||
- Update to 2.4.0
|
||||
* Info files are no longer built
|
||||
* Package all license and read-me files
|
||||
- Clean up makeinfo dependency
|
||||
- Drop cross .spec files in preparation for Factory submission
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 20 21:52:07 UTC 2015 - afaerber@suse.de
|
||||
|
||||
- Update to 2.2.0.20150623
|
||||
- Add cross-rx-newlib-devel package
|
||||
- Revert installing files to sysroot
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 10 21:50:42 UTC 2015 - afaerber@suse.de
|
||||
|
||||
- Switch cross template to gcc5
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 6 15:53:44 UTC 2015 - afaerber@suse.de
|
||||
|
||||
- Install target files to sysroot
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Nov 1 00:52:40 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- Enable native builds
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 31 21:08:45 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- epiphany-fixes.diff: Drop executable permissions of
|
||||
libepiphany.a and crt0.o
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 31 20:05:26 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- Turn cross-epiphany-newlib into generic newlib package
|
||||
* Rename packages to -devel to avoid empty -newlib packages
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 21 07:21:21 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- Update to official 2.1.0 tarball
|
||||
* Drop portability.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 30 02:29:16 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- Initial
|
||||
|
70
newlib.spec
Normal file
70
newlib.spec
Normal file
@ -0,0 +1,70 @@
|
||||
#
|
||||
# spec file for package newlib
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# 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 http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
Name: newlib
|
||||
Version: 2.4.0
|
||||
Release: 0
|
||||
Summary: C library intended for use on embedded systems
|
||||
License: BSD-3-Clause and MIT and LGPL-2.0+ and ISC
|
||||
Group: Development/Tools
|
||||
Url: https://sourceware.org/newlib/
|
||||
Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
|
||||
|
||||
Patch1: epiphany-fixes.diff
|
||||
|
||||
%if %{suse_version} > 1220
|
||||
BuildRequires: makeinfo
|
||||
%else
|
||||
BuildRequires: texinfo
|
||||
%endif
|
||||
|
||||
%description
|
||||
Newlib is a C library intended for use on embedded systems. It is a
|
||||
conglomeration of several library parts, all under free software licenses
|
||||
that make them easily usable on embedded products.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
mkdir build-dir
|
||||
cd build-dir
|
||||
# On %%ix86 hosts newlib is documented to be buildable as shared library via --with-newlib,
|
||||
# but it fails to build for us and we don't need a host library at the moment.
|
||||
../configure \
|
||||
--prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
|
||||
%ifarch %ix86
|
||||
%if 0
|
||||
--with-newlib \
|
||||
%endif
|
||||
%endif
|
||||
CFLAGS="%{optflags}"
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
cd build-dir
|
||||
make install DESTDIR=%{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc COPYING.NEWLIB COPYING.LIBGLOSS COPYING COPYING.LIB COPYING3 COPYING3.LIB
|
||||
%doc newlib/README newlib/NEWS
|
||||
|
||||
%changelog
|
66
newlib.spec.in
Normal file
66
newlib.spec.in
Normal file
@ -0,0 +1,66 @@
|
||||
|
||||
Name: cross-%{cross_arch}-newlib-devel
|
||||
Version: 2.4.0
|
||||
Release: 0
|
||||
Summary: C library intended for use on %{cross_arch} embedded systems
|
||||
Group: Development/Tools
|
||||
License: BSD-3-Clause and MIT and LGPL-2.0+ and ISC
|
||||
URL: https://sourceware.org/newlib/
|
||||
Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
|
||||
|
||||
Patch1: epiphany-fixes.diff
|
||||
|
||||
BuildRequires: cross-%{cross_arch}-binutils
|
||||
BuildRequires: cross-%{cross_arch}-gcc@gcc_base_ver@-bootstrap
|
||||
%if %{suse_version} > 1220
|
||||
BuildRequires: makeinfo
|
||||
%else
|
||||
BuildRequires: texinfo
|
||||
%endif
|
||||
|
||||
%description
|
||||
Newlib is a C library intended for use on embedded systems. It is a
|
||||
conglomeration of several library parts, all under free software licenses
|
||||
that make them easily usable on embedded products.
|
||||
|
||||
%define target %{cross_arch}
|
||||
%if %{cross_arch} == "epiphany" || %{cross_arch} == "rl78" || %{cross_arch} == "rx"
|
||||
%define target %{cross_arch}-elf
|
||||
%endif
|
||||
%if %{cross_arch} == "spu"
|
||||
%define sysroot /usr/spu
|
||||
%else
|
||||
%define sysroot %{_prefix}/%{target}/sys-root
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q -n newlib-%{version}
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
mkdir build-dir
|
||||
cd build-dir
|
||||
../configure \
|
||||
--prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
|
||||
--target=%{target} --with-build-sysroot=%{sysroot} \
|
||||
CC_FOR_TARGET=%{target}-gcc%{gcc_binsuffix} \
|
||||
CXX_FOR_TARGET=%{target}-g++%{gcc_binsuffix} \
|
||||
GCC_FOR_TARGET=%{target}-gcc%{gcc_binsuffix}
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
# All binaries built are for the target architecture - don't damage them.
|
||||
export NO_BRP_STRIP_DEBUG=true
|
||||
export NO_DEBUGINFO_STRIP_DEBUG=true
|
||||
%define __debug_install_post %{nil}
|
||||
: >debugfiles.list
|
||||
: >debugsources.list
|
||||
|
||||
cd build-dir
|
||||
make install DESTDIR=%{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%{_prefix}/%{target}/
|
||||
|
||||
%changelog
|
17
pre_checkin.sh
Normal file
17
pre_checkin.sh
Normal file
@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
|
||||
gcc_base_ver=5
|
||||
gcc_binsuffix=-5
|
||||
|
||||
rm -f cross*.spec cross*.changes
|
||||
|
||||
for arch in ; do
|
||||
pkgname=cross-$arch-newlib-devel
|
||||
outfile=$pkgname.spec
|
||||
echo "%define cross_arch $arch" > $outfile
|
||||
echo "%define gcc_binsuffix ${gcc_binsuffix}" >> $outfile
|
||||
sed -e "s#@gcc_base_ver@#$gcc_base_ver#" newlib.spec.in >> $outfile
|
||||
cp newlib.changes $pkgname.changes
|
||||
done
|
||||
|
||||
osc service localrun format_spec_file
|
Loading…
x
Reference in New Issue
Block a user