Bug#547136: libatomic-ops: FTFBS on sh4
Package: libatomic-ops
Version: 1.2+cvs20080819-1
Severity: wishlist
Tags: patch
User: debian-sh4@superh.org
Usertags: sh4
Hi,
I am now trying to run Debian on Renesas SH CPU(sh4).
libatomic-ops FTBFS on sh4.
------
cc -DHAVE_CONFIG_H -I. -I. -I. -fPIC -g -O2 -g -Wall -O2 -DNDEBUG -c
atomic_ops.c
atomic_ops.c:74: error: expected '=', ',', ';', 'asm' or '__attribute__'
before 'AO_locks'
atomic_ops.c: In function 'AO_spin':
atomic_ops.c:91: warning: implicit declaration of function 'AO_load'
atomic_ops.c:98: warning: implicit declaration of function 'AO_store'
atomic_ops.c: At top level:
atomic_ops.c:116: warning: type defaults to 'int' in declaration of
'AO_TS_t'
atomic_ops.c:116: error: expected ';', ',' or ')' before '*' token
atomic_ops.c:124: warning: type defaults to 'int' in declaration of
'AO_TS_t'
atomic_ops.c:124: error: expected ';', ',' or ')' before '*' token
atomic_ops.c:130: warning: type defaults to 'int' in declaration of
'AO_TS_t'
atomic_ops.c:130: error: expected ';', ',' or ')' before '*' token
atomic_ops.c:139: error: expected '=', ',', ';', 'asm' or
'__attribute__' before 'init_lock'
atomic_ops.c: In function 'AO_compare_and_swap_emulation':
atomic_ops.c:144: error: 'AO_TS_t' undeclared (first use in this
function)
atomic_ops.c:144: error: (Each undeclared identifier is reported only
once
atomic_ops.c:144: error: for each function it appears in.)
atomic_ops.c:144: error: 'my_lock' undeclared (first use in this
function)
atomic_ops.c:144: error: 'AO_locks' undeclared (first use in this
function)
atomic_ops.c:148: warning: implicit declaration of function
'AO_load_acquire'
atomic_ops.c:150: warning: implicit declaration of function 'lock'
atomic_ops.c:150: error: 'init_lock' undeclared (first use in this
function)
atomic_ops.c:152: warning: implicit declaration of function 'unlock'
atomic_ops.c:153: warning: implicit declaration of function
'AO_store_release'
atomic_ops.c: In function 'AO_compare_double_and_swap_double_emulation':
atomic_ops.c:180: error: 'AO_TS_t' undeclared (first use in this
function)
atomic_ops.c:180: error: 'my_lock' undeclared (first use in this
function)
atomic_ops.c:180: error: 'AO_locks' undeclared (first use in this
function)
atomic_ops.c:186: error: 'init_lock' undeclared (first use in this
function)
atomic_ops.c: In function 'AO_store_full_emulation':
atomic_ops.c:215: error: 'AO_TS_t' undeclared (first use in this
function)
atomic_ops.c:215: error: 'my_lock' undeclared (first use in this
function)
atomic_ops.c:215: error: 'AO_locks' undeclared (first use in this
function)
make[4]: *** [atomic_ops.o] Error 1
make[4]: Leaving directory
`/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make: *** [debian/stamp-makefile-build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2
------
Current libatomic-ops package doesn't support sh4.
I made a patch to revise to be able to build.
I attached patch and buildlog.
Would you apply it?
Best regards,
Nobuhiro
dpkg-buildpackage -rfakeroot -D -us -uc -mNobuhiro Iwamatsu <iwamatsu@nigauri.org>
dpkg-buildpackage: set CFLAGS to default value: -g -O2
dpkg-buildpackage: set CPPFLAGS to default value:
dpkg-buildpackage: set LDFLAGS to default value:
dpkg-buildpackage: set FFLAGS to default value: -g -O2
dpkg-buildpackage: set CXXFLAGS to default value: -g -O2
dpkg-buildpackage: source package libatomic-ops
dpkg-buildpackage: source version 1.2+cvs20080819-1+sh4
dpkg-buildpackage: host architecture sh4
fakeroot debian/rules clean
test -x debian/rules
dh_testroot
/usr/bin/make -C . -k distclean
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[1]: *** No rule to make target `distclean'.
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make: [makefile-clean] Error 2 (ignored)
rm -f debian/stamp-makefile-build
rm -f debian/stamp-makefile-check
/usr/bin/make -f debian/rules reverse-config
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
for i in ./config.guess ./config.sub ; do \
if test -e $i.cdbs-orig ; then \
mv $i.cdbs-orig $i ; \
fi ; \
done
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
if [ "reverse-patches" = "reverse-patches" ]; then rm -f debian/stamp-patched; fi
patches: debian/patches/03_nodoc.patch debian/patches/04_sh4_support.patch
Patch debian/patches/04_sh4_support.patch is not applied.
Patch debian/patches/03_nodoc.patch is not applied.
if [ "reverse-patches" != "reverse-patches" ]; then touch debian/stamp-patched; fi
if [ "reverse-patches" != "reverse-patches" ] ; then \
/usr/bin/make -f debian/rules update-config ; \
fi
for dir in debian/patches ; do \
rm -f $dir/*.log ; \
done
for i in ./config.guess ./config.sub ; do \
if test -e $i.cdbs-orig ; then \
mv $i.cdbs-orig $i ; \
fi ; \
done
dh_clean
rm -f debian/stamp-autotools-files
dpkg-source -b libatomic-ops-1.2+cvs20080819
dpkg-source: info: using source format `1.0'
dpkg-source: info: building libatomic-ops using existing libatomic-ops_1.2+cvs20080819.orig.tar.gz
dpkg-source: info: building libatomic-ops in libatomic-ops_1.2+cvs20080819-1+sh4.diff.gz
dpkg-source: warning: ignoring deletion of file tests/test_atomic_include.h
dpkg-source: info: building libatomic-ops in libatomic-ops_1.2+cvs20080819-1+sh4.dsc
debian/rules build
test -x debian/rules
mkdir -p "."
/usr/bin/make -f debian/rules reverse-config
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
for i in ./config.guess ./config.sub ; do \
if test -e $i.cdbs-orig ; then \
mv $i.cdbs-orig $i ; \
fi ; \
done
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
if [ "debian/stamp-patched" = "reverse-patches" ]; then rm -f debian/stamp-patched; fi
patches: debian/patches/03_nodoc.patch debian/patches/04_sh4_support.patch
Trying patch debian/patches/03_nodoc.patch at level 1 ... success.
Trying patch debian/patches/04_sh4_support.patch at level 1 ... success.
if [ "debian/stamp-patched" != "reverse-patches" ]; then touch debian/stamp-patched; fi
if [ "debian/stamp-patched" != "reverse-patches" ] ; then \
/usr/bin/make -f debian/rules update-config ; \
fi
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
if test -e /usr/share/misc/config.guess ; then \
for i in ./config.guess ; do \
if ! test -e $i.cdbs-orig ; then \
mv $i $i.cdbs-orig ; \
cp --remove-destination /usr/share/misc/config.guess $i ; \
fi ; \
done ; \
fi
if test -e /usr/share/misc/config.sub ; then \
for i in ./config.sub ; do \
if ! test -e $i.cdbs-orig ; then \
mv $i $i.cdbs-orig ; \
cp --remove-destination /usr/share/misc/config.sub $i ; \
fi ; \
done ; \
fi
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
if test -e /usr/share/misc/config.guess ; then \
for i in ./config.guess ; do \
if ! test -e $i.cdbs-orig ; then \
mv $i $i.cdbs-orig ; \
cp --remove-destination /usr/share/misc/config.guess $i ; \
fi ; \
done ; \
fi
if test -e /usr/share/misc/config.sub ; then \
for i in ./config.sub ; do \
if ! test -e $i.cdbs-orig ; then \
mv $i $i.cdbs-orig ; \
cp --remove-destination /usr/share/misc/config.sub $i ; \
fi ; \
done ; \
fi
cd . && aclocal-1.9
if [ -e ./configure.ac ] || [ -e ./configure.in ]; then cd . && `which autoconf2.50 || which autoconf`; fi
if [ -e ./Makefile.am ]; then cd . && automake-1.9 ; fi
touch debian/stamp-autotools-files
chmod a+x /home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/./configure
cd . && CC="cc" CXX="g++" CFLAGS="-g -O2 -g -Wall -O2" CXXFLAGS="-g -O2 -g -Wall -O2" CPPFLAGS="" LDFLAGS="" /home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/./configure --build=sh4-linux-gnu --prefix=/usr --includedir="\${prefix}/include" --mandir="\${prefix}/share/man" --infodir="\${prefix}/share/info" --sysconfdir=/etc --localstatedir=/var --libexecdir="\${prefix}/lib/libatomic-ops" --disable-maintainer-mode --disable-dependency-tracking --srcdir=.
configure: WARNING: unrecognized options: --disable-maintainer-mode
checking build system type... sh4-unknown-linux-gnu
checking host system type... sh4-unknown-linux-gnu
checking target system type... sh4-unknown-linux-gnu
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 ranlib... ranlib
checking for gcc... cc
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 cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of cc... none
checking how to run the C preprocessor... cc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking for ANSI C header files... (cached) yes
checking Determining PIC compiler flag... -fPIC
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/atomic_ops/Makefile
config.status: creating src/atomic_ops/sysdeps/Makefile
config.status: creating doc/Makefile
config.status: creating tests/Makefile
config.status: creating src/config.h
config.status: executing depfiles commands
config.status: executing default commands
configure: WARNING: unrecognized options: --disable-maintainer-mode
/usr/bin/make -C .
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
Making all in src
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
/usr/bin/make all-recursive
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
Making all in atomic_ops
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
Making all in sysdeps
make[5]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[5]: Nothing to be done for `all'.
make[5]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[5]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[5]: Nothing to be done for `all-am'.
make[5]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
cc -DHAVE_CONFIG_H -I. -I. -I. -fPIC -g -O2 -g -Wall -O2 -DNDEBUG -c atomic_ops.c
rm -f libatomic_ops.a
ar cru libatomic_ops.a atomic_ops.o
ranlib libatomic_ops.a
cc -DHAVE_CONFIG_H -I. -I. -I. -fPIC -g -O2 -g -Wall -O2 -DNDEBUG -c atomic_ops_stack.c
cc -DHAVE_CONFIG_H -I. -I. -I. -fPIC -g -O2 -g -Wall -O2 -DNDEBUG -c atomic_ops_malloc.c
atomic_ops_malloc.c: In function 'msb':
atomic_ops_malloc.c:223: warning: right shift count >= width of type
rm -f libatomic_ops_gpl.a
ar cru libatomic_ops_gpl.a atomic_ops_stack.o atomic_ops_malloc.o
ranlib libatomic_ops_gpl.a
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
Making all in tests
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
sed -e s/XX// test_atomic.template > test_atomic_include.h
sed -e s/XX/_release/ test_atomic.template >> test_atomic_include.h
sed -e s/XX/_acquire/ test_atomic.template >> test_atomic_include.h
sed -e s/XX/_read/ test_atomic.template >> test_atomic_include.h
sed -e s/XX/_write/ test_atomic.template >> test_atomic_include.h
sed -e s/XX/_full/ test_atomic.template >> test_atomic_include.h
sed -e s/XX/_release_write/ test_atomic.template >> test_atomic_include.h
sed -e s/XX/_acquire_read/ test_atomic.template >> test_atomic_include.h
echo "#include \"atomic_ops.h\" " > list_atomic.c
sed -e s/XX// list_atomic.template >> list_atomic.c
sed -e s/XX/_release/ list_atomic.template >> list_atomic.c
sed -e s/XX/_acquire/ list_atomic.template >> list_atomic.c
sed -e s/XX/_read/ list_atomic.template >> list_atomic.c
sed -e s/XX/_write/ list_atomic.template >> list_atomic.c
sed -e s/XX/_full/ list_atomic.template >> list_atomic.c
sed -e s/XX/_release_write/ list_atomic.template >> list_atomic.c
sed -e s/XX/_acquire_read/ list_atomic.template >> list_atomic.c
cc -DHAVE_CONFIG_H -I. -I. -I../src -I./../src -g -O2 -g -Wall -O2 -DNDEBUG list_atomic.c -E > list_atomic.i
/usr/bin/make all-am
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[2]: Nothing to be done for `all-am'.
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
touch debian/stamp-makefile-build
/usr/bin/make -C . check
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
Making check in src
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
Making check in atomic_ops
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
Making check in sysdeps
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[4]: Nothing to be done for `check'.
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[4]: Nothing to be done for `check-am'.
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[3]: Nothing to be done for `check-am'.
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
Making check in tests
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
/usr/bin/make check-am
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
/usr/bin/make test_atomic test_atomic_pthreads test_stack test_malloc
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
cc -DHAVE_CONFIG_H -I. -I. -I../src -I./../src -g -O2 -g -Wall -O2 -DNDEBUG -c test_atomic.c
cc -g -O2 -g -Wall -O2 -DNDEBUG -o test_atomic test_atomic.o -lpthread ../src/libatomic_ops.a
cc -DHAVE_CONFIG_H -I. -I. -I../src -DAO_USE_PTHREAD_DEFS -I./../src -g -O2 -g -Wall -O2 -DNDEBUG -c -o test_atomic_pthreads-test_atomic.o `test -f 'test_atomic.c' || echo './'`test_atomic.c
cc -g -O2 -g -Wall -O2 -DNDEBUG -o test_atomic_pthreads test_atomic_pthreads-test_atomic.o -lpthread ../src/libatomic_ops.a
cc -DHAVE_CONFIG_H -I. -I. -I../src -I./../src -g -O2 -g -Wall -O2 -DNDEBUG -c test_stack.c
test_stack.c: In function 'run_one_test':
test_stack.c:113: warning: unused variable 'aux'
cc -g -O2 -g -Wall -O2 -DNDEBUG -o test_stack test_stack.o -lpthread ../src/libatomic_ops_gpl.a ../src/libatomic_ops.a
cc -DHAVE_CONFIG_H -I. -I. -I../src -I./../src -g -O2 -g -Wall -O2 -DNDEBUG -c test_malloc.c
test_malloc.c: In function 'main':
test_malloc.c:158: warning: unused variable 'exper_n'
cc -g -O2 -g -Wall -O2 -DNDEBUG -o test_malloc test_malloc.o -lpthread ../src/libatomic_ops_gpl.a ../src/libatomic_ops.a
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
/usr/bin/make check-TESTS
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
Missing: AO_fetch_and_add
Missing: AO_fetch_and_add1
Missing: AO_fetch_and_sub1
Missing: AO_short_fetch_and_add
Missing: AO_short_fetch_and_add1
Missing: AO_short_fetch_and_sub1
Missing: AO_char_fetch_and_add
Missing: AO_char_fetch_and_add1
Missing: AO_char_fetch_and_sub1
Missing: AO_int_fetch_and_add
Missing: AO_int_fetch_and_add1
Missing: AO_int_fetch_and_sub1
Missing: AO_compare_and_swap
Missing: AO_or
Missing: AO_compare_double_and_swap_double
Missing: AO_compare_and_swap_double
Missing: AO_nop_acquire
Missing: AO_store_acquire
Missing: AO_fetch_and_add_acquire
Missing: AO_fetch_and_add1_acquire
Missing: AO_fetch_and_sub1_acquire
Missing: AO_short_store_acquire
Missing: AO_short_fetch_and_add_acquire
Missing: AO_short_fetch_and_add1_acquire
Missing: AO_short_fetch_and_sub1_acquire
Missing: AO_char_store_acquire
Missing: AO_char_fetch_and_add_acquire
Missing: AO_char_fetch_and_add1_acquire
Missing: AO_char_fetch_and_sub1_acquire
Missing: AO_int_store_acquire
Missing: AO_int_fetch_and_add_acquire
Missing: AO_int_fetch_and_add1_acquire
Missing: AO_int_fetch_and_sub1_acquire
Missing: AO_compare_and_swap_acquire
Missing: AO_or_acquire
Missing: AO_compare_double_and_swap_double_acquire
Missing: AO_compare_and_swap_double_acquire
Missing: AO_nop_release
Missing: AO_load_release
Missing: AO_fetch_and_add_release
Missing: AO_fetch_and_add1_release
Missing: AO_fetch_and_sub1_release
Missing: AO_short_load_release
Missing: AO_short_fetch_and_add_release
Missing: AO_short_fetch_and_add1_release
Missing: AO_short_fetch_and_sub1_release
Missing: AO_char_load_release
Missing: AO_char_fetch_and_add_release
Missing: AO_char_fetch_and_add1_release
Missing: AO_char_fetch_and_sub1_release
Missing: AO_int_load_release
Missing: AO_int_fetch_and_add_release
Missing: AO_int_fetch_and_add1_release
Missing: AO_int_fetch_and_sub1_release
Missing: AO_compare_and_swap_release
Missing: AO_or_release
Missing: AO_compare_double_and_swap_double_release
Missing: AO_compare_and_swap_double_release
Missing: AO_store_read
Missing: AO_fetch_and_add_read
Missing: AO_fetch_and_add1_read
Missing: AO_fetch_and_sub1_read
Missing: AO_short_store_read
Missing: AO_short_fetch_and_add_read
Missing: AO_short_fetch_and_add1_read
Missing: AO_short_fetch_and_sub1_read
Missing: AO_char_store_read
Missing: AO_char_fetch_and_add_read
Missing: AO_char_fetch_and_add1_read
Missing: AO_char_fetch_and_sub1_read
Missing: AO_int_store_read
Missing: AO_int_fetch_and_add_read
Missing: AO_int_fetch_and_add1_read
Missing: AO_int_fetch_and_sub1_read
Missing: AO_compare_and_swap_read
Missing: AO_or_read
Missing: AO_compare_double_and_swap_double_read
Missing: AO_compare_and_swap_double_read
Missing: AO_load_write
Missing: AO_fetch_and_add_write
Missing: AO_fetch_and_add1_write
Missing: AO_fetch_and_sub1_write
Missing: AO_short_load_write
Missing: AO_short_fetch_and_add_write
Missing: AO_short_fetch_and_add1_write
Missing: AO_short_fetch_and_sub1_write
Missing: AO_char_load_write
Missing: AO_char_fetch_and_add_write
Missing: AO_char_fetch_and_add1_write
Missing: AO_char_fetch_and_sub1_write
Missing: AO_int_load_write
Missing: AO_int_fetch_and_add_write
Missing: AO_int_fetch_and_add1_write
Missing: AO_int_fetch_and_sub1_write
Missing: AO_compare_and_swap_write
Missing: AO_or_write
Missing: AO_compare_double_and_swap_double_write
Missing: AO_compare_and_swap_double_write
Missing: AO_fetch_and_add_full
Missing: AO_fetch_and_add1_full
Missing: AO_fetch_and_sub1_full
Missing: AO_short_fetch_and_add_full
Missing: AO_short_fetch_and_add1_full
Missing: AO_short_fetch_and_sub1_full
Missing: AO_char_fetch_and_add_full
Missing: AO_char_fetch_and_add1_full
Missing: AO_char_fetch_and_sub1_full
Missing: AO_int_fetch_and_add_full
Missing: AO_int_fetch_and_add1_full
Missing: AO_int_fetch_and_sub1_full
Missing: AO_compare_and_swap_full
Missing: AO_or_full
Missing: AO_compare_double_and_swap_double_full
Missing: AO_compare_and_swap_double_full
Missing: AO_nop_release_write
Missing: AO_load_release_write
Missing: AO_fetch_and_add_release_write
Missing: AO_fetch_and_add1_release_write
Missing: AO_fetch_and_sub1_release_write
Missing: AO_short_load_release_write
Missing: AO_short_fetch_and_add_release_write
Missing: AO_short_fetch_and_add1_release_write
Missing: AO_short_fetch_and_sub1_release_write
Missing: AO_char_load_release_write
Missing: AO_char_fetch_and_add_release_write
Missing: AO_char_fetch_and_add1_release_write
Missing: AO_char_fetch_and_sub1_release_write
Missing: AO_int_load_release_write
Missing: AO_int_fetch_and_add_release_write
Missing: AO_int_fetch_and_add1_release_write
Missing: AO_int_fetch_and_sub1_release_write
Missing: AO_compare_and_swap_release_write
Missing: AO_or_release_write
Missing: AO_compare_double_and_swap_double_release_write
Missing: AO_compare_and_swap_double_release_write
Missing: AO_nop_acquire_read
Missing: AO_store_acquire_read
Missing: AO_fetch_and_add_acquire_read
Missing: AO_fetch_and_add1_acquire_read
Missing: AO_fetch_and_sub1_acquire_read
Missing: AO_short_store_acquire_read
Missing: AO_short_fetch_and_add_acquire_read
Missing: AO_short_fetch_and_add1_acquire_read
Missing: AO_short_fetch_and_sub1_acquire_read
Missing: AO_char_store_acquire_read
Missing: AO_char_fetch_and_add_acquire_read
Missing: AO_char_fetch_and_add1_acquire_read
Missing: AO_char_fetch_and_sub1_acquire_read
Missing: AO_int_store_acquire_read
Missing: AO_int_fetch_and_add_acquire_read
Missing: AO_int_fetch_and_add1_acquire_read
Missing: AO_int_fetch_and_sub1_acquire_read
Missing: AO_compare_and_swap_acquire_read
Missing: AO_or_acquire_read
Missing: AO_compare_double_and_swap_double_acquire_read
Missing: AO_compare_and_swap_double_acquire_read
Testing store_release_write/load_acquire_read
Succeeded
Testing test_and_set
Succeeded
PASS: test_atomic
Missing: AO_nop_acquire
Missing: AO_store_acquire
Missing: AO_short_store_acquire
Missing: AO_char_store_acquire
Missing: AO_int_store_acquire
Missing: AO_nop_release
Missing: AO_load_release
Missing: AO_short_load_release
Missing: AO_char_load_release
Missing: AO_int_load_release
Missing: AO_store_read
Missing: AO_short_store_read
Missing: AO_char_store_read
Missing: AO_int_store_read
Missing: AO_load_write
Missing: AO_short_load_write
Missing: AO_char_load_write
Missing: AO_int_load_write
Missing: AO_nop_release_write
Missing: AO_load_release_write
Missing: AO_short_load_release_write
Missing: AO_char_load_release_write
Missing: AO_int_load_release_write
Missing: AO_nop_acquire_read
Missing: AO_store_acquire_read
Missing: AO_short_store_acquire_read
Missing: AO_char_store_acquire_read
Missing: AO_int_store_acquire_read
Testing add1/sub1
Succeeded
Testing store_release_write/load_acquire_read
Succeeded
Testing test_and_set
Succeeded
PASS: test_atomic_pthreads
About 1000000 pushes + 1000000 pops in 1 threads: 4842 msecs
About 1000000 pushes + 1000000 pops in 2 threads: 4842 msecs
About 1000000 pushes + 1000000 pops in 3 threads: 4853 msecs
About 1000000 pushes + 1000000 pops in 4 threads: 4847 msecs
PASS: test_stack
Testing AO_malloc/AO_free
Succeeded
Performing 1000 reversals of 1000 element lists in 10 threads
PASS: test_malloc
==================
All 4 tests passed
==================
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[2]: Nothing to be done for `check-am'.
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
touch debian/stamp-makefile-check
fakeroot debian/rules binary
test -x debian/rules
dh_testroot
dh_clean -k
dh_installdirs -A
mkdir -p "."
if test -e /usr/share/misc/config.guess ; then \
for i in ./config.guess ; do \
if ! test -e $i.cdbs-orig ; then \
mv $i $i.cdbs-orig ; \
cp --remove-destination /usr/share/misc/config.guess $i ; \
fi ; \
done ; \
fi
if test -e /usr/share/misc/config.sub ; then \
for i in ./config.sub ; do \
if ! test -e $i.cdbs-orig ; then \
mv $i $i.cdbs-orig ; \
cp --remove-destination /usr/share/misc/config.sub $i ; \
fi ; \
done ; \
fi
/usr/bin/make -C . install DESTDIR=/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev/
make[1]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
Making install in src
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
Making install in atomic_ops
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
Making install in sysdeps
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[5]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[5]: Nothing to be done for `install-exec-am'.
test -z "/usr/include/atomic_ops/sysdeps" || mkdir -p -- "/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps"
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'generic_pthread.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/generic_pthread.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'aligned_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/aligned_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'acquire_release_volatile.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/acquire_release_volatile.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'char_acquire_release_volatile.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/char_acquire_release_volatile.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'char_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/char_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'short_acquire_release_volatile.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/short_acquire_release_volatile.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'short_aligned_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/short_aligned_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'short_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/short_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'int_acquire_release_volatile.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/int_acquire_release_volatile.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'int_aligned_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/int_aligned_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'int_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/int_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'all_acquire_release_volatile.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/all_acquire_release_volatile.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'all_aligned_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/all_aligned_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'all_atomic_load_store.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/all_atomic_load_store.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'read_ordered.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/read_ordered.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'ordered_except_wr.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/ordered_except_wr.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'ordered.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/ordered.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'ao_t_is_int.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/ao_t_is_int.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'test_and_set_t_is_ao_t.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/test_and_set_t_is_ao_t.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'test_and_set_t_is_char.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/test_and_set_t_is_char.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'emul_cas.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/emul_cas.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'standard_ao_double_t.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/standard_ao_double_t.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'README' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/README'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/alpha.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/alpha.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/arm.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/arm.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/x86.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/x86.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/hppa.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/hppa.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/ia64.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/ia64.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/powerpc.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/powerpc.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/sparc.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/sparc.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/hppa.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/hppa.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/m68k.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/m68k.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/mips.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/mips.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/s390.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/s390.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/ia64.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/ia64.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/x86_64.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/x86_64.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/cris.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/cris.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'gcc/sh.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/gcc/sh.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'icc/ia64.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/icc/ia64.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'msftc/x86.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/msftc/x86.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'msftc/x86_64.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/msftc/x86_64.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'hpc/ia64.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/hpc/ia64.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'hpc/hppa.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/hpc/hppa.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'sunc/sparc.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/sunc/sparc.h'
/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/install-sh -c -m 644 'ibmc/powerpc.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/sysdeps/ibmc/powerpc.h'
make[5]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops/sysdeps'
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[5]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[5]: Nothing to be done for `install-exec-am'.
test -z "/usr/include/atomic_ops/" || mkdir -p -- "/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops/"
/usr/bin/install -c -m 644 'generalize.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops//generalize.h'
/usr/bin/install -c -m 644 'generalize-small.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops//generalize-small.h'
make[5]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src/atomic_ops'
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
test -z "/usr/lib" || mkdir -p -- "/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/lib"
/usr/bin/install -c -m 644 'libatomic_ops.a' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/lib/libatomic_ops.a'
/usr/bin/install -c -m 644 'libatomic_ops_gpl.a' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/lib/libatomic_ops_gpl.a'
ranlib '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/lib/libatomic_ops.a'
ranlib '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/lib/libatomic_ops_gpl.a'
test -z "/usr/include" || mkdir -p -- "/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include"
/usr/bin/install -c -m 644 'atomic_ops.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops.h'
/usr/bin/install -c -m 644 'atomic_ops_stack.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops_stack.h'
/usr/bin/install -c -m 644 'atomic_ops_malloc.h' '/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/debian/libatomic-ops-dev//usr/include/atomic_ops_malloc.h'
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/src'
Making install in tests
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
/usr/bin/make install-am
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[4]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
make[4]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819/tests'
make[2]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[3]: Entering directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[2]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
make[1]: Leaving directory `/home/iwamatsu/build-area/libatomic-ops/libatomic-ops-1.2+cvs20080819'
dh_installdirs -plibatomic-ops-dev
dh_installdocs -plibatomic-ops-dev ./README ./NEWS ./AUTHORS
dh_installexamples -plibatomic-ops-dev
dh_installman -plibatomic-ops-dev
dh_installinfo -plibatomic-ops-dev
dh_installmenu -plibatomic-ops-dev
dh_installcron -plibatomic-ops-dev
dh_installinit -plibatomic-ops-dev
dh_installdebconf -plibatomic-ops-dev
dh_installemacsen -plibatomic-ops-dev
dh_installcatalogs -plibatomic-ops-dev
dh_installpam -plibatomic-ops-dev
dh_installlogrotate -plibatomic-ops-dev
dh_installlogcheck -plibatomic-ops-dev
dh_installchangelogs -plibatomic-ops-dev ./ChangeLog
dh_installudev -plibatomic-ops-dev
dh_lintian -plibatomic-ops-dev
dh_install -plibatomic-ops-dev
dh_link -plibatomic-ops-dev
dh_installmime -plibatomic-ops-dev
dh_strip -plibatomic-ops-dev
dh_compress -plibatomic-ops-dev
dh_fixperms -plibatomic-ops-dev
dh_makeshlibs -plibatomic-ops-dev
dh_installdeb -plibatomic-ops-dev
dh_perl -plibatomic-ops-dev
dh_shlibdeps -plibatomic-ops-dev
dh_gencontrol -plibatomic-ops-dev
dpkg-gencontrol: warning: unknown substitution variable ${shlibs:Depends}
dh_md5sums -plibatomic-ops-dev
dh_builddeb -plibatomic-ops-dev
dpkg-deb: building package `libatomic-ops-dev' in `../libatomic-ops-dev_1.2+cvs20080819-1+sh4_sh4.deb'.
dpkg-genchanges -mNobuhiro Iwamatsu <iwamatsu@nigauri.org> >../libatomic-ops_1.2+cvs20080819-1+sh4_sh4.changes
dpkg-genchanges: warning: missing Section for source files
dpkg-genchanges: not including original source code in upload
dpkg-buildpackage: binary and diff upload (original source NOT included)
Now signing changes and any dsc files...
signfile libatomic-ops_1.2+cvs20080819-1+sh4.dsc Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
signfile libatomic-ops_1.2+cvs20080819-1+sh4_sh4.changes Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Successfully signed dsc and changes files
diff --git a/src/atomic_ops/sysdeps/gcc/sh.h b/src/atomic_ops/sysdeps/gcc/sh.h
new file mode 100644
index 0000000..ad97008
--- /dev/null
+++ b/src/atomic_ops/sysdeps/gcc/sh.h
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2009 by Takashi YOSHII. All rights reserved.
+ *
+ *
+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
+ *
+ * Permission is hereby granted to use or copy this program
+ * for any purpose, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
+ */
+
+#include "../all_atomic_load_store.h"
+#include "../ordered.h"
+/* sh has tas.b(byte) only */
+#include "../test_and_set_t_is_char.h"
+
+#undef AO_TS_SET
+#define AO_TS_SET (1<<7)
+
+AO_INLINE AO_TS_VAL_t
+AO_test_and_set_full(volatile AO_TS_t *addr)
+{
+ int oldval;
+
+ __asm__ __volatile__(
+ "tas.b @%1; movt %0"
+ : "=r" (oldval)
+ : "r" (addr)
+ : "t", "memory");
+ return oldval?AO_TS_CLEAR:AO_TS_SET;
+}
+#define AO_HAVE_test_and_set_full
--- a/src/atomic_ops/sysdeps/Makefile.am.orig 2009-09-17 15:47:50.000000000 +0900
+++ b/src/atomic_ops/sysdeps/Makefile.am 2009-09-17 15:48:19.000000000 +0900
@@ -28,7 +28,7 @@
gcc/hppa.h gcc/ia64.h \
gcc/powerpc.h gcc/sparc.h \
gcc/hppa.h gcc/m68k.h gcc/mips.h gcc/s390.h \
- gcc/ia64.h gcc/x86_64.h gcc/cris.h \
+ gcc/ia64.h gcc/x86_64.h gcc/cris.h gcc/sh.h \
\
icc/ia64.h \
\
--- a/src/atomic_ops.h.orig 2009-09-17 15:46:10.000000000 +0900
+++ b/src/atomic_ops.h 2009-09-17 15:47:33.000000000 +0900
@@ -232,6 +232,10 @@
# if defined(__mips__)
# include "atomic_ops/sysdeps/gcc/mips.h"
# endif /* __mips__ */
+# if defined(__sh__) || defined(SH4)
+# include "atomic_ops/sysdeps/gcc/sh.h"
+# define AO_CAN_EMUL_CAS
+# endif /* __sh__ */
#endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */
#if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS)
Reply to: