summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjk7744.park <jk7744.park@samsung.com>2015-02-01 15:22:51 +0900
committerjk7744.park <jk7744.park@samsung.com>2015-02-01 15:22:51 +0900
commitd59e1ae8123cef3a173b20b027e2da44c1035c8e (patch)
tree72c0758e0b711148bcf3c15dab6392bb57efe3a0
parentc04cd0c210d74b3efbd5a32e89afa50bfb88d1a1 (diff)
downloadeglibc-x86-d59e1ae8123cef3a173b20b027e2da44c1035c8e.tar.gz
eglibc-x86-d59e1ae8123cef3a173b20b027e2da44c1035c8e.tar.bz2
eglibc-x86-d59e1ae8123cef3a173b20b027e2da44c1035c8e.zip
-rw-r--r--packaging/OBS-Accelerator-0.1.tar.bz2bin0 -> 4419 bytes
-rw-r--r--packaging/baselibs.conf13
-rw-r--r--packaging/binaries_to_prepare1
-rw-r--r--packaging/eglibc-x86.changes17
-rw-r--r--[-rwxr-xr-x]packaging/eglibc-x86.spec96
5 files changed, 75 insertions, 52 deletions
diff --git a/packaging/OBS-Accelerator-0.1.tar.bz2 b/packaging/OBS-Accelerator-0.1.tar.bz2
new file mode 100644
index 0000000..b569eac
--- /dev/null
+++ b/packaging/OBS-Accelerator-0.1.tar.bz2
Binary files differ
diff --git a/packaging/baselibs.conf b/packaging/baselibs.conf
index dfb734b..a279b90 100644
--- a/packaging/baselibs.conf
+++ b/packaging/baselibs.conf
@@ -1,13 +1,2 @@
arch i586 targets armv5tel:arm armv6l:arm armv7l:arm armv7hl:arm armv7nhl:arm
-eglibc-x86
- targettype x86 block!
- targettype 32bit block!
- targettype arm autoreqprov off
- targettype arm requires "eglibc"
- targettype arm prefix /emul/ia32-linux
- targettype arm extension -arm
- targettype arm +/
- targettype arm -//usr/share/man
- targettype arm -//usr/share/doc
- targettype arm requires "tizen-accelerator"
- targettype arm provides "glibc-x86-arm"
+arch x86_64 targets armv5tel:arm armv6l:arm armv7l:arm armv7hl:arm armv7nhl:arm
diff --git a/packaging/binaries_to_prepare b/packaging/binaries_to_prepare
new file mode 100644
index 0000000..8b0c822
--- /dev/null
+++ b/packaging/binaries_to_prepare
@@ -0,0 +1 @@
+/sbin/ldconfig
diff --git a/packaging/eglibc-x86.changes b/packaging/eglibc-x86.changes
new file mode 100644
index 0000000..6b4d008
--- /dev/null
+++ b/packaging/eglibc-x86.changes
@@ -0,0 +1,17 @@
+* Wed Jun 28 12:00:00 KST 2014 - UkJung Kim <ujkim@samsung.com> - 1.0
+- Update to support x86_64
+
+* Fri Jul 6 14:30:00 KST 2012 - UkJung Kim <ujkim@samsung.com> - 1.0
+- Added and updated OBS-Accelerator-0.1.tar.bz2
+
+* Sun Apr 24 08:02:35 UTC 2011 - Jan-Simon Möller <jsmoeller@linuxfoundation.org> - 1.0
+- Add baselibs.conf to src.rpm
+
+* Mon Jan 3 21:03:00 UTC 2011 Carsten Munk <carsten@maemo.org> - 1.0
+- Add armv7hl and armv7nhl support, part of fix for BMC#12112
+
+* Mon May 3 22:27:34 UTC 2010 Jan-Simon Möller <jsmoeller@linuxfoundation.org> - 1.0
+- Update to armv7 crossbuild.
+
+* Tue Apr 20 17:03:30 UTC 2010 Jan-Simon Möller <jsmoeller@linuxfoundation.org> - 1.0
+- Initial version on meego.com
diff --git a/packaging/eglibc-x86.spec b/packaging/eglibc-x86.spec
index c57c43a..65198b0 100755..100644
--- a/packaging/eglibc-x86.spec
+++ b/packaging/eglibc-x86.spec
@@ -1,3 +1,4 @@
+%define release_prefix 9
%define __strip /bin/true
%define _build_name_fmt %%{ARCH}/%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.vanish.rpm
# meta spec file for cross-chroot setup
@@ -22,11 +23,15 @@
#
# The original package name
+# e.g. qemu
+#
%define oldname eglibc
#
# The architectures this meta package is built on
-%define myexclusive i586
+# e.g. i586
+#
+%define myexclusive i586 x86_64
#
# The required package for building this package
@@ -41,23 +46,28 @@ BuildRequires: rpm grep tar sed patchelf
#
#Requires: <usuallyemptlylist>
+### no changes needed below this line
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+### no changes needed
+
# For a real accelerator, also the old packge is required for compatibility
# pls change this only if you know what you do
Requires: %oldname
#
# Release under which to put the accelerator
-# e.g. 1 or higher
#
-Release: 8.4
+Release: %release_prefix
-### no changes needed below this line
-# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-### no changes needed
#
-# The new package name - convention is %oldname-x86
-%define newname %{oldname}-x86
+# 64bit arch
+%ifarch x86_64
+%define x64 x64
+%endif
+#
+# The new package name - convention is %oldname-%{!?x64:x86}%{?x64}
+%define newname %{oldname}-%{!?x64:x86}%{?x64}
#
# The version of the original package is read from its rpm db info
%{expand:%%define newversion %(rpm -q --qf '[%{version}]' %oldname)}
@@ -72,8 +82,8 @@ Release: 8.4
%{expand:%%define newsummary %(rpm -q --qf '[%{summary} - special version ]' %oldname)}
#
# New rpath to add to files on request
-%define newrpath "/emul/ia32-linux/lib:/emul/ia32-linux/usr/lib"
-%define newinterpreter /emul/ia32-linux/lib/ld-linux.so.2
+%define newrpath "/emul/ia32-linux/%{_lib}:/emul/ia32-linux/usr/%{_lib}"
+%define newinterpreter /emul/ia32-linux/%{_lib}/ld-linux%{?x64:-x86-64}.so.2
#
# Some automatic checks for availability
# binaries_to_prepare
@@ -117,15 +127,6 @@ It is not intended to be used on a normal system/device!
Original description:
%{expand:%(rpm -q --qf '[%{description}]' %oldname)}
-%package arm
-Summary: C library for accelerator cross build.
-Group: Development/Libraries
-Requires: %{newname}-arm = %{version}-%{release}
-Provides: glibc-x86-arm
-
-%description arm
-this is a hack package to make eglibc replace glibc.
-
%prep
%build
@@ -156,6 +157,13 @@ for i in `rpm -ql filesystem`; do
echo "s#^${i}\$##" >> $sedtmp
done
+# ignore directories
+for i in `cat filestoinclude1`; do
+ if test -d $i ; then
+ echo "s#^${i}\$##" >> $sedtmp
+ fi
+done
+
#finish up
echo "/^\$/d" >> $sedtmp
@@ -185,8 +193,9 @@ rm filestoinclude2
echo ""
echo "[ .oO Preparing binaries Oo. ]"
echo ""
+cat %{_sourcedir}/binaries_to_prepare | sed "s/@LIB@/%{_lib}/g" > binaries_to_prepare1
mkdir -p %buildroot/%{_prefix}/share/applybinary/
-for binary in `cat %{_sourcedir}/binaries_to_prepare` ; do
+for binary in `cat binaries_to_prepare1` ; do
echo "Processing binary: $binary"
tmp="tmp.$$"
%if %nodebug
@@ -195,13 +204,11 @@ for binary in `cat %{_sourcedir}/binaries_to_prepare` ; do
debug="--debug"
%endif
if file $binary | grep -q dynamic; then
- ldd $binary | grep -v "ld-linux" | grep -v "linux-gate" | sed -e "s#=.*##g" -e "s#^\t*##g" > $tmp
- deps=$(for i in `cat $tmp` ; do rpm -q --whatprovides "$i" | grep -v "no package"; done)
+ ldd $binary | grep -v "ld-linux" | grep -v "linux-gate" | grep -v "linux-vdso" | sed -e "s#=.*##g" -e "s#^\t*##g" > $tmp
+ deps=$(for i in `cat $tmp` ; do rpm -q --whatprovides "${i}%{?x64:()(64bit)}" | grep -v "no package"; done)
cleandeps=$(echo "$cleandeps" "$deps" | sort | uniq | sed -e "s/-[0-9].*//g")
patchelf $debug --set-rpath %newrpath %buildroot/$binary
patchelf $debug --set-interpreter %newinterpreter %buildroot/$binary
- patchelf $debug --set-rpath %newrpath %buildroot/$binary
- patchelf $debug --set-interpreter %newinterpreter %buildroot/$binary
if test -n "$debug"; then
patchelf --print-rpath %buildroot/$binary
patchelf --print-interpreter %buildroot/$binary
@@ -217,6 +224,7 @@ done
echo ""
echo "[ .oO Preparing libraries Oo. ]"
echo ""
+cat %{_sourcedir}/libraries_to_prepare | sed "s/@LIB@/%{_lib}/g" > libraries_to_prepare1
%endif
# stub
@@ -252,7 +260,7 @@ shellquote " targettype arm autoreqprov off" >> /tmp/baselibs_new.conf
# automagically fill in basic requirements
for i in $cleandeps ; do
- shellquote " targettype arm requires \"${i}-x86-arm\"" >> /tmp/baselibs_new.conf
+ shellquote " targettype arm requires \"${i}-%{!?x64:x86}%{?x64}-arm\"" >> /tmp/baselibs_new.conf
done
# we require the native version
@@ -265,12 +273,11 @@ shellquote " targettype arm +/" >> /tmp/baselibs_new.conf
shellquote " targettype arm -/%{_mandir}" >> /tmp/baselibs_new.conf
shellquote " targettype arm -/%{_docdir}" >> /tmp/baselibs_new.conf
shellquote " targettype arm requires \"tizen-accelerator\"" >> /tmp/baselibs_new.conf
-shellquote " targettype arm provides \"glibc-x86-arm\"" >> /tmp/baselibs_new.conf
# replace native with x86 binaries as defined in file
%if %binaries_to_prepare
# Todo: error handling if .orig-arm is present
-for binary in `cat %{_sourcedir}/binaries_to_prepare` ; do
+for binary in `cat binaries_to_prepare1` ; do
shellquote " targettype arm post \" if test -e ${binary}.orig-arm -a -h ${binary}; then \" " >> /tmp/baselibs_new.conf
shellquote " targettype arm post \" echo \"${binary}.orig-arm already present - skipping.\" \" " >> /tmp/baselibs_new.conf
shellquote " targettype arm post \" else \" " >> /tmp/baselibs_new.conf
@@ -279,7 +286,7 @@ for binary in `cat %{_sourcedir}/binaries_to_prepare` ; do
done
shellquote " " >> /tmp/baselibs_new.conf
-for binary in `cat %{_sourcedir}/binaries_to_prepare` ; do
+for binary in `cat binaries_to_prepare1` ; do
shellquote " targettype arm preun \" if test -e ${binary}.orig-arm ; then \"" >> /tmp/baselibs_new.conf
shellquote " targettype arm preun \" rm -f ${binary} ; mv ${binary}.orig-arm ${binary}\"" >> /tmp/baselibs_new.conf
@@ -288,6 +295,26 @@ for binary in `cat %{_sourcedir}/binaries_to_prepare` ; do
done
%endif
+%if %libraries_to_prepare
+# Todo: error handling if .orig-arm is present
+for library in `cat libraries_to_prepare1` ; do
+ shellquote " targettype arm post \" if test -e ${library}.orig-arm -a -h ${library}; then \" " >> /tmp/baselibs_new.conf
+ shellquote " targettype arm post \" echo \"${library}.orig-arm already present - skipping.\" \" " >> /tmp/baselibs_new.conf
+ shellquote " targettype arm post \" else \" " >> /tmp/baselibs_new.conf
+ shellquote " targettype arm post \" mv ${library} ${library}.orig-arm ; ln -s <prefix>${library} ${library} \"" >> /tmp/baselibs_new.conf
+ shellquote " targettype arm post \" fi \" " >> /tmp/baselibs_new.conf
+done
+
+shellquote " " >> /tmp/baselibs_new.conf
+for library in `cat libraries_to_prepare1` ; do
+
+ shellquote " targettype arm preun \" if test -e ${library}.orig-arm ; then \"" >> /tmp/baselibs_new.conf
+ shellquote " targettype arm preun \" rm -f ${library} ; mv ${library}.orig-arm ${library}\"" >> /tmp/baselibs_new.conf
+ shellquote " targettype arm preun \" fi \"" >> /tmp/baselibs_new.conf
+
+done
+%endif
+
cat /tmp/baselibs_new.conf >> %{_sourcedir}/baselibs.conf
echo "################################################################################"
@@ -311,14 +338,3 @@ rm -rf $RPM_BUILD_ROOT
%if %binaries_to_prepare
/%{_prefix}/share/applybinary/%name
%endif
-%changelog
-* Fri Jul 6 2012 UkJung Kim <ujkim@samsung.com> - 1.0
-- Added and updated OBS-Accelerator-0.1.tar.bz2
-* Sun Apr 24 2011 Jan-Simon Möller <jsmoeller@linuxfoundation.org> - 1.0
-- Add baselibs.conf to src.rpm
-* Tue Jan 4 2011 Carsten Munk <carsten@maemo.org> - 1.0
-- Add armv7hl and armv7nhl support, part of fix for BMC#12112
-* Tue May 4 2010 Jan-Simon Möller <jsmoeller@linuxfoundation.org> - 1.0
-- Update to armv7 crossbuild.
-* Wed Apr 21 2010 Jan-Simon Möller <jsmoeller@linuxfoundation.org> - 1.0
-- Initial version on meego.com