-SUBDIRS=atomic_ops
-
AM_CFLAGS=@PICFLAG@
include_HEADERS=atomic_ops.h atomic_ops_stack.h atomic_ops_malloc.h
libatomic_ops_gpl_a_SOURCES = atomic_ops_stack.c atomic_ops_malloc.c
-EXTRA_DIST=Makefile.msft
+EXTRA_DIST=Makefile.msft \
+ atomic_ops/generalize-small.template atomic_ops/sysdeps/sunc/sparc.S
+
+#Private Headers
+privatedir=${includedir}/atomic_ops/
+private_HEADERS=atomic_ops/generalize.h atomic_ops/generalize-small.h \
+ atomic_ops/sysdeps/README \
+ atomic_ops/sysdeps/acquire_release_volatile.h \
+ atomic_ops/sysdeps/aligned_atomic_load_store.h \
+ atomic_ops/sysdeps/all_acquire_release_volatile.h \
+ atomic_ops/sysdeps/all_aligned_atomic_load_store.h \
+ atomic_ops/sysdeps/all_atomic_load_store.h \
+ atomic_ops/sysdeps/ao_t_is_int.h \
+ atomic_ops/sysdeps/atomic_load_store.h \
+ atomic_ops/sysdeps/char_acquire_release_volatile.h \
+ atomic_ops/sysdeps/char_atomic_load_store.h \
+ atomic_ops/sysdeps/emul_cas.h \
+ atomic_ops/sysdeps/generic_pthread.h \
+ atomic_ops/sysdeps/int_acquire_release_volatile.h \
+ atomic_ops/sysdeps/int_aligned_atomic_load_store.h \
+ atomic_ops/sysdeps/int_atomic_load_store.h \
+ atomic_ops/sysdeps/ordered.h \
+ atomic_ops/sysdeps/ordered_except_wr.h \
+ atomic_ops/sysdeps/read_ordered.h \
+ atomic_ops/sysdeps/short_acquire_release_volatile.h \
+ atomic_ops/sysdeps/short_aligned_atomic_load_store.h \
+ atomic_ops/sysdeps/short_atomic_load_store.h \
+ atomic_ops/sysdeps/standard_ao_double_t.h \
+ atomic_ops/sysdeps/test_and_set_t_is_ao_t.h \
+ atomic_ops/sysdeps/test_and_set_t_is_char.h \
+ \
+ atomic_ops/sysdeps/armcc/arm_v6.h \
+ \
+ atomic_ops/sysdeps/gcc/alpha.h \
+ atomic_ops/sysdeps/gcc/arm.h \
+ atomic_ops/sysdeps/gcc/avr32.h \
+ atomic_ops/sysdeps/gcc/cris.h \
+ atomic_ops/sysdeps/gcc/hppa.h \
+ atomic_ops/sysdeps/gcc/ia64.h \
+ atomic_ops/sysdeps/gcc/m68k.h \
+ atomic_ops/sysdeps/gcc/mips.h \
+ atomic_ops/sysdeps/gcc/powerpc.h \
+ atomic_ops/sysdeps/gcc/s390.h \
+ atomic_ops/sysdeps/gcc/sh.h \
+ atomic_ops/sysdeps/gcc/sparc.h \
+ atomic_ops/sysdeps/gcc/x86.h \
+ atomic_ops/sysdeps/gcc/x86_64.h \
+ \
+ atomic_ops/sysdeps/hpc/hppa.h \
+ atomic_ops/sysdeps/hpc/ia64.h \
+ \
+ atomic_ops/sysdeps/ibmc/powerpc.h \
+ \
+ atomic_ops/sysdeps/icc/ia64.h \
+ \
+ atomic_ops/sysdeps/msftc/arm.h \
+ atomic_ops/sysdeps/msftc/common32_defs.h \
+ atomic_ops/sysdeps/msftc/x86.h \
+ atomic_ops/sysdeps/msftc/x86_64.h \
+ \
+ atomic_ops/sysdeps/sunc/sparc.h \
+ atomic_ops/sysdeps/sunc/x86.h \
+ atomic_ops/sysdeps/sunc/x86_64.h
+atomic_ops/generalize-small.h: atomic_ops/generalize-small.template
+ sed -e s:XSIZE:char:g -e s:XCTYPE:char:g $? > $@
+ sed -e s:XSIZE:short:g -e s:XCTYPE:short:g $? >> $@
+ sed -e s:XSIZE:int:g -e s:XCTYPE:int:g $? >> $@
+++ /dev/null
-#General sysdep utility headers, followed by the arch-specific ones
-nobase_sysdep_HEADERS= generic_pthread.h \
- atomic_load_store.h \
- aligned_atomic_load_store.h \
- acquire_release_volatile.h \
- char_acquire_release_volatile.h \
- char_atomic_load_store.h \
- short_acquire_release_volatile.h \
- short_aligned_atomic_load_store.h \
- short_atomic_load_store.h \
- int_acquire_release_volatile.h \
- int_aligned_atomic_load_store.h \
- int_atomic_load_store.h \
- all_acquire_release_volatile.h \
- all_aligned_atomic_load_store.h \
- all_atomic_load_store.h \
- read_ordered.h \
- ordered_except_wr.h \
- ordered.h \
- ao_t_is_int.h \
- test_and_set_t_is_ao_t.h \
- test_and_set_t_is_char.h \
- emul_cas.h \
- standard_ao_double_t.h \
- README \
- \
- armcc/arm_v6.h \
- \
- gcc/alpha.h gcc/arm.h gcc/avr32.h gcc/cris.h \
- gcc/hppa.h gcc/ia64.h gcc/m68k.h \
- gcc/mips.h gcc/powerpc.h gcc/s390.h \
- gcc/sh.h gcc/sparc.h gcc/x86.h gcc/x86_64.h \
- \
- hpc/hppa.h hpc/ia64.h \
- \
- ibmc/powerpc.h \
- \
- icc/ia64.h \
- \
- msftc/arm.h msftc/common32_defs.h msftc/x86.h \
- msftc/x86_64.h \
- \
- sunc/sparc.h sunc/x86.h sunc/x86_64.h
-
-sysdepdir= ${includedir}/atomic_ops/sysdeps
-
-# A few architectures require special .S files
-EXTRA_DIST = sunc/sparc.S