running UML using image /...-suse-9.0/image (SuSE 9.0)
Checking that ptrace can change system call numbers...OK
Checking syscall emulation patch for ptrace...OK
Checking advanced syscall emulation patch for ptrace...OK
Checking for tmpfs mount on /dev/shm...nothing mounted on /dev/shm
Checking PROT_EXEC mmap in /tmp/nix-21581-3/...OK
Checking for the skas3 patch in the host:
- /proc/mm...found
- PTRACE_FAULTINFO...found
- PTRACE_LDT...found
UML running in SKAS3 mode
+ echo 'creating /dev...'
creating /dev...
+ mount -n -t tmpfs none /dev
+ mknod /dev/ubd0 b 98 0
+ echo 'mounting image on /tmp/nix-21581-3/root...'
mounting image on /tmp/nix-21581-3/root...
+ mkdir root
+ mount -n -t ext2 /dev/ubd0 /tmp/nix-21581-3/root
+ echo 'switching roots'
switching roots
+ mkdir /tmp/nix-21581-3/root/hostfs
++ dirname /nix/store
+ mkdir -p /tmp/nix-21581-3/root//nix
+ ln -s /hostfs//nix/store /tmp/nix-21581-3/root//nix/store
+ /...-util-linux-2.13-pre7/sbin/pivot_root /tmp/nix-21581-3/root /tmp/nix-21581-3/root/hostfs
+ cd /
+ echo 'mounting /proc...'
mounting /proc...
+ mount -n -t proc none /proc
+ cd /tmp
+ export TMPDIR=/tmp
+ TMPDIR=/tmp
+ export TMP_DIR=/tmp
+ TMP_DIR=/tmp
+ sh -e /...-rpm-build.sh
copying source tarball...
checking /etc/passwd..
creating /etc/passwd ...
checking /etc/group..
creating /etc/group ...
contents of /tmp...
total 73
-r--r--r-- 1 root root 73694 May 24 15:49 patchelf-0.3.tar.bz2
building RPM...
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.66554
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd /usr/src/packages/BUILD
+ rm -rf patchelf-0.3
+ /usr/bin/bzip2 -dc /tmp/patchelf-0.3.tar.bz2
+ tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd patchelf-0.3
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chown -Rhf root .
++ /usr/bin/id -u
+ '[' 0 = 0 ']'
+ /bin/chgrp -Rhf root .
+ /bin/chmod -Rf a+rX,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.66554
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd patchelf-0.3
+ ./configure --prefix=/usr
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: executing depfiles commands
+ make
Making all in src
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/src'
if g++ -DPACKAGE_NAME=\"patchelf\" -DPACKAGE_TARNAME=\"patchelf\" -DPACKAGE_VERSION=\"\"0.3\"\" -DPACKAGE_STRING=\"patchelf\ \"0.3\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"patchelf\" -DVERSION=\"\"0.3\"\" -I. -I. -g -O2 -MT patchelf.o -MD -MP -MF ".deps/patchelf.Tpo" -c -o patchelf.o patchelf.cc; \
then mv -f ".deps/patchelf.Tpo" ".deps/patchelf.Po"; else rm -f ".deps/patchelf.Tpo"; exit 1; fi
g++ -g -O2 -o patchelf patchelf.o
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/src'
Making all in tests
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3'
make[1]: Nothing to be done for `all-am'.
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3'
+ make check
Making check in src
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/src'
make[1]: Nothing to be done for `check'.
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/src'
Making check in tests
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make main simple big-dynstr
make[2]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
gcc -fpic -o main.o -c main.c
gcc -fpic -o foo.o -c foo.c
gcc -fpic -o bar.o -c bar.c
NIX_DONT_SET_RPATH=1 gcc -shared -o libbar.so bar.o -L . -Wl,-rpath,`pwd`/no-such-path
gcc -shared -o libfoo.so foo.o -L . -lbar
LD_LIBRARY_PATH=. gcc -o main main.o -L . -lfoo
if gcc -DPACKAGE_NAME=\"patchelf\" -DPACKAGE_TARNAME=\"patchelf\" -DPACKAGE_VERSION=\"\"0.3\"\" -DPACKAGE_STRING=\"patchelf\ \"0.3\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"patchelf\" -DVERSION=\"\"0.3\"\" -I. -I. -g -O2 -MT simple.o -MD -MP -MF ".deps/simple.Tpo" -c -o simple.o simple.c; \
then mv -f ".deps/simple.Tpo" ".deps/simple.Po"; else rm -f ".deps/simple.Tpo"; exit 1; fi
gcc -g -O2 -o simple simple.o
if gcc -DPACKAGE_NAME=\"patchelf\" -DPACKAGE_TARNAME=\"patchelf\" -DPACKAGE_VERSION=\"\"0.3\"\" -DPACKAGE_STRING=\"patchelf\ \"0.3\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"patchelf\" -DVERSION=\"\"0.3\"\" -I. -I. -g -O2 -MT big-dynstr.o -MD -MP -MF ".deps/big-dynstr.Tpo" -c -o big-dynstr.o big-dynstr.c; \
then mv -f ".deps/big-dynstr.Tpo" ".deps/big-dynstr.Po"; else rm -f ".deps/big-dynstr.Tpo"; exit 1; fi
LD_LIBRARY_PATH=. gcc -o big-dynstr big-dynstr.o -L . -lfoo
make[2]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make check-TESTS
make[2]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
./main: error while loading shared libraries: libfoo.so: cannot open shared object file: No such file or directory
PASS: plain-fail.sh
Hello World
This is foo()!
This is bar()!
Result is 46
PASS: plain-run.sh
RPATH before: /usr/src/packages/BUILD/patchelf-0.3/tests/no-such-path
patching ELF file `scratch/libbar.so'
removing directory `/usr/src/packages/BUILD/patchelf-0.3/tests/no-such-path' from RPATH
new rpath is `'
RPATH after:
Hello World
This is foo()!
This is bar()!
Result is 46
PASS: shrink-rpath.sh
Hello World
current interpreter is /lib/ld-linux.so.2
patching ELF file `scratch/simple'
replacing section `.interp' with size 6
using replaced section `.interp'
last replaced is 1
looking at section `.interp'
first reserved offset/addr is 0x108/0x8048108
first page is 0x8048000
needed space is 252
clearing first 20 bytes
rewriting section `.interp' to offset 244
running with missing interpreter...
./set-interpreter-short.sh: line 15: scratch/simple: No such file or directory
PASS: set-interpreter-short.sh
Hello World
current interpreter is /lib/ld-linux.so.2
patching ELF file `scratch/simple'
replacing section `.interp' with size 152
using replaced section `.interp'
last replaced is 1
looking at section `.interp'
first reserved offset/addr is 0x108/0x8048108
first page is 0x8048000
needed space is 396
needed space is 428
needed pages is 1
clearing first 4084 bytes
rewriting section `.interp' to offset 276
running with missing interpreter...
./set-interpreter-long.sh: line 16: scratch/simple: No such file or directory
running with new interpreter...
Hello World
PASS: set-interpreter-long.sh
patching ELF file `scratch/main'
new rpath is `/oops:/usr/src/packages/BUILD/patchelf-0.3/tests/scratch/libsA:/usr/src/packages/BUILD/patchelf-0.3/tests/scratch/libsB'
rpath is too long, resizing...
DT_NULL index is 20
replacing section `.dynamic' with size 216
replacing section `.dynstr' with size 297
using replaced section `.dynstr'
using replaced section `.dynamic'
last replaced is 17
looking at section `.interp'
replacing section `.interp' which is in the way
looking at section `.note.ABI-tag'
replacing section `.note.ABI-tag' which is in the way
looking at section `.hash'
replacing section `.hash' which is in the way
looking at section `.dynsym'
replacing section `.dynsym' which is in the way
looking at section `.dynstr'
looking at section `.gnu.version'
first reserved offset/addr is 0x306/0x8048306
first page is 0x8048000
needed space is 1112
needed space is 1144
needed pages is 1
clearing first 4594 bytes
rewriting section `.dynamic' to offset 276
rewriting section `.dynstr' to offset 492
rewriting section `.dynsym' to offset 792
rewriting section `.hash' to offset 1016
rewriting section `.interp' to offset 1092
rewriting section `.note.ABI-tag' to offset 1112
Hello World
This is foo()!
This is bar()!
Result is 46
PASS: set-rpath.sh
patching ELF file `scratch/no-rpath'
new rpath is `/foo:/bar:/xxxxxxxxxxxxxxx'
rpath is too long, resizing...
DT_NULL index is 19
replacing section `.dynamic' with size 208
replacing section `.dynstr' with size 103
replacing section `.interp' with size 19
using replaced section `.interp'
using replaced section `.dynstr'
using replaced section `.dynamic'
last replaced is 17
looking at section `.interp'
looking at section `.note.ABI-tag'
replacing section `.note.ABI-tag' which is in the way
looking at section `.hash'
replacing section `.hash' which is in the way
looking at section `.dynsym'
replacing section `.dynsym' which is in the way
looking at section `.dynstr'
looking at section `.gnu.version'
first reserved offset/addr is 0x1ec/0x80481ec
first page is 0x8048000
needed space is 728
needed space is 760
needed pages is 1
clearing first 4312 bytes
rewriting section `.dynamic' to offset 276
rewriting section `.dynstr' to offset 484
rewriting section `.dynsym' to offset 588
rewriting section `.hash' to offset 668
rewriting section `.interp' to offset 708
rewriting section `.note.ABI-tag' to offset 728
PASS: no-rpath.sh
patching ELF file `scratch/big-dynstr'
new rpath is `/oops:/usr/src/packages/BUILD/patchelf-0.3/tests/scratch/libsA:/usr/src/packages/BUILD/patchelf-0.3/tests/scratch/libsB'
rpath is too long, resizing...
DT_NULL index is 20
replacing section `.dynamic' with size 216
replacing section `.dynstr' with size 302
using replaced section `.dynstr'
using replaced section `.dynamic'
last replaced is 17
looking at section `.interp'
replacing section `.interp' which is in the way
looking at section `.note.ABI-tag'
replacing section `.note.ABI-tag' which is in the way
looking at section `.hash'
replacing section `.hash' which is in the way
looking at section `.dynsym'
replacing section `.dynsym' which is in the way
looking at section `.dynstr'
looking at section `.gnu.version'
first reserved offset/addr is 0x31e/0x804831e
first page is 0x8048000
needed space is 1136
needed space is 1168
needed pages is 1
clearing first 4618 bytes
rewriting section `.dynamic' to offset 276
rewriting section `.dynstr' to offset 492
rewriting section `.dynsym' to offset 796
rewriting section `.hash' to offset 1036
rewriting section `.interp' to offset 1116
rewriting section `.note.ABI-tag' to offset 1136
Hello World
This is foo()!
This is bar()!
Result is 46
PASS: big-dynstr.sh
==================
All 8 tests passed
==================
make[2]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3'
make[1]: Nothing to be done for `check-am'.
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3'
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.91339
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd patchelf-0.3
+ rm -rf /var/tmp/patchelf-0.3-buildroot
+ make DESTDIR=/var/tmp/patchelf-0.3-buildroot install
Making install in src
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/src'
make[2]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/src'
test -z "/usr/bin" || mkdir -p -- "/var/tmp/patchelf-0.3-buildroot/usr/bin"
/usr/bin/install -c 'patchelf' '/var/tmp/patchelf-0.3-buildroot/usr/bin/patchelf'
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/src'
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/src'
Making install in tests
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[2]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3/tests'
make[1]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3'
make[2]: Entering directory `/usr/src/packages/BUILD/patchelf-0.3'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3'
make[1]: Leaving directory `/usr/src/packages/BUILD/patchelf-0.3'
+ strip /var/tmp/patchelf-0.3-buildroot//usr/bin/patchelf
+ RPM_BUILD_ROOT=/var/tmp/patchelf-0.3-buildroot
+ export RPM_BUILD_ROOT
+ test -x /usr/sbin/Check -a 0 = 0 -o -x /usr/sbin/Check -a '!' -z /var/tmp/patchelf-0.3-buildroot
+ /usr/lib/rpm/brp-compress
Processing files: patchelf-0.3-1
D: execv(/usr/lib/rpm/find-provides) pid 1477
D: waitpid(1477) rc 1477 status 0
Finding Provides: /usr/lib/rpm/find-provides
D: execv(/usr/lib/rpm/find-requires) pid 1486
D: waitpid(1486) rc 1486 status 0
Finding Requires: /usr/lib/rpm/find-requires
Requires(rpmlib): rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1
Requires: ld-linux.so.2 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1.3) libgcc_s.so.1 libgcc_s.so.1(GCC_3.0) libm.so.6 libstdc++.so.5 libstdc++.so.5(CXXABI_1.2) libstdc++.so.5(GLIBCPP_3.2) libstdc++.so.5(GLIBCPP_3.2.2)
Checking for unpackaged file(s): /usr/lib/rpm/check-files /var/tmp/patchelf-0.3-buildroot
D: execv(/usr/lib/rpm/check-files) pid 1523
D: waitpid(1523) rc 1523 status 0
warning: Could not canonicalize hostname: (none)
D: fini 100444 1 ( 0, 0) 73694 /tmp/patchelf-0.3.tar.bz2
D: fini 100600 1 ( 0, 0) 702 /usr/src/packages/SPECS/patchelf.spec
GZDIO: 3 writes, 74780 total bytes in 0.013 secs
D: Signature: size(180)+pad(4)
Wrote: /usr/src/packages/SRPMS/patchelf-0.3-1.src.rpm
D: fini 040755 3 ( 0, 0) 0
D: fini 040755 3 ( 0, 0) 0 /usr
D: fini 040755 2 ( 0, 0) 0 /usr/bin
D: fini 100755 1 ( 0, 0) 110656 /usr/bin/patchelf
GZDIO: 3 writes, 111264 total bytes in 0.037 secs
D: Signature: size(180)+pad(4)
Wrote: /usr/src/packages/RPMS/i586/patchelf-0.3-1.i586.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.41262
+ umask 022
+ cd /usr/src/packages/BUILD
+ cd patchelf-0.3
+ rm -rf /var/tmp/patchelf-0.3-buildroot
+ exit 0
+ touch /hostfs//tmp/nix-21581-3/success
+ echo syncing...
syncing...
+ sync
+ echo halting...
halting...
+ /...-sysvinit-2.85/sbin/halt -d -f
Checking that ptrace can change system call numbers...OK
Checking syscall emulation patch for ptrace...OK
Checking advanced syscall emulation patch for ptrace...OK
UML finished
/...-run-in-uml.sh: line 30: 22964 Terminated tail -n +0 -f log