glibc/sysdeps/unix/sysv/linux/s390/s390-32/Makefile

31 lines
587 B
Makefile
Raw Normal View History

# See Makeconfig regarding the use of default-abi.
default-abi := 32
* Versions.def: Add GLIBC_2.9 version tag for libutil. * sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of gnu/bits/utmp.h. Check for __WORDSIZE_COMPAT32 removed. * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of gnu/bits/utmpx.h. Check for __WORDSIZE_COMPAT32 removed. * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files utmp32, utmpx32 and login32. * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9 versions of struct utmp functions to libc and libutil. * sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file.
2008-07-26 17:43:30 +00:00
ifeq ($(subdir),login)
sysdep_routines += utmp32 utmpx32 login32
* Versions.def: Add GLIBC_2.9 version tag for libutil. * sysdeps/unix/sysv/linux/s390/bits/utmp.h: Copy of gnu/bits/utmp.h. Check for __WORDSIZE_COMPAT32 removed. * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Copy of gnu/bits/utmpx.h. Check for __WORDSIZE_COMPAT32 removed. * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Add new files utmp32, utmpx32 and login32. * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Add 2.9 versions of struct utmp functions to libc and libutil. * sysdeps/unix/sysv/linux/s390/s390-32/utmp-compat.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutent.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutent_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutid.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutid_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutline_r.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutmp.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxent.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxid.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/getutxline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/login.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/login32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/pututxline.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/updwtmp.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/updwtmpx.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp-convert.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx-convert.h: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: New file. * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: New file.
2008-07-26 17:43:30 +00:00
endif
Update. 2000-08-02 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/s390/Dist: New file. * sysdeps/unix/sysv/linux/s390/sysdep.h: New file. * sysdeps/unix/sysv/linux/s390/sysdep.S: New file. * sysdeps/unix/sysv/linux/s390/syscall.S: New file. * sysdeps/unix/sysv/linux/s390/sys/user.h: New file. * sysdeps/unix/sysv/linux/s390/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: New file. * sysdeps/unix/sysv/linux/s390/sys/elf.h: New file. * sysdeps/unix/sysv/linux/s390/socket.S: New file. * sysdeps/unix/sysv/linux/s390/sigcontextinfo.h: New file. * sysdeps/unix/sysv/linux/s390/shmctl.c: New file. * sysdeps/unix/sysv/linux/s390/setreuid.c: New file. * sysdeps/unix/sysv/linux/s390/setresuid.c: New file. * sysdeps/unix/sysv/linux/s390/setresgid.c: New file. * sysdeps/unix/sysv/linux/s390/setregid.c: New file. * sysdeps/unix/sysv/linux/s390/setgroups.c: New file. * sysdeps/unix/sysv/linux/s390/setgid.c: New file. * sysdeps/unix/sysv/linux/s390/setfsuid.c: New file. * sysdeps/unix/sysv/linux/s390/setfsgid.c: New file. * sysdeps/unix/sysv/linux/s390/seteuid.c: New file. * sysdeps/unix/sysv/linux/s390/setegid.c: New file. * sysdeps/unix/sysv/linux/s390/semctl.c: New file. * sysdeps/unix/sysv/linux/s390/register-dump.h: New file. * sysdeps/unix/sysv/linux/s390/putpmsg.c: New file. * sysdeps/unix/sysv/linux/s390/putmsg.c: New file. * sysdeps/unix/sysv/linux/s390/profil-counter.h: New file. * sysdeps/unix/sysv/linux/s390/msgctl.c: New file. * sysdeps/unix/sysv/linux/s390/mmap.S: New file. * sysdeps/unix/sysv/linux/s390/getuid.c: New file. * sysdeps/unix/sysv/linux/s390/getresuid.c: New file. * sysdeps/unix/sysv/linux/s390/getresgid.c: New file. * sysdeps/unix/sysv/linux/s390/getpmsg.c: New file. * sysdeps/unix/sysv/linux/s390/getmsg.c: New file. * sysdeps/unix/sysv/linux/s390/getgroups.c: New file. * sysdeps/unix/sysv/linux/s390/getegid.c: New file. * sysdeps/unix/sysv/linux/s390/geteuid.c: New file. * sysdeps/unix/sysv/linux/s390/fchown.c: New file. * sysdeps/unix/sysv/linux/s390/clone.S: New file. * sysdeps/unix/sysv/linux/s390/brk.c: New file. * sysdeps/unix/sysv/linux/s390/bits/time.h: New file. * sysdeps/unix/sysv/linux/s390/bits/resource.h: New file. * sysdeps/unix/sysv/linux/s390/bits/mman.h: New file. * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: New file. * sysdeps/unix/sysv/linux/s390/Makefile: New file. * sysdeps/s390/sysdep.h: New file. * sysdeps/s390/sys/ucontext.h: New file. * sysdeps/s390/sub_n.S: New file. * sysdeps/s390/strncpy.S: New file. * sysdeps/s390/strcpy.S: New file. * sysdeps/s390/stackinfo.h: New file. * sysdeps/s390/setjmp.S: New file. * sysdeps/s390/s390-mcount.S: New file. * sysdeps/s390/mul_1.S: New file. * sysdeps/s390/memusage.h: New file. * sysdeps/s390/memset.S: New file. * sysdeps/s390/memcpy.S: New file. * sysdeps/s390/memchr.S: New file. * sysdeps/s390/machine-gmon.h: New file. * sysdeps/s390/ldbl2mpn.c: New file. * sysdeps/s390/gmp-mparam.h: New file. * sysdeps/s390/fpu/fpu_control.h: New file. * sysdeps/s390/fpu/fesetround.c: New file. * sysdeps/s390/fpu/fegetround.c: New file. * sysdeps/s390/fpu/fclrexcpt.c: New file. * sysdeps/s390/fpu/bits/fenv.h: New file. * sysdeps/s390/ffs.c: New file. * sysdeps/s390/elf/start.S: New file. * sysdeps/s390/elf/setjmp.S: New file. * sysdeps/s390/elf/bsd-setjmp.S: New file. * sysdeps/s390/elf/bsd-_setjmp.S: New file. * sysdeps/s390/dl-machine.h: New file. * sysdeps/s390/bzero.S: New file. * sysdeps/s390/bsd-setjmp.S: New file. * sysdeps/s390/bsd-_setjmp.S: New file. * sysdeps/s390/bits/string.h: New file. * sysdeps/s390/bits/setjmp.h: New file. * sysdeps/s390/bits/huge_val.h: New file. * sysdeps/s390/bits/endian.h: New file. * sysdeps/s390/bits/byteswap.h: New file. * sysdeps/s390/bcopy.S: New file. * sysdeps/s390/backtrace.c: New file. * sysdeps/s390/atomicity.h: New file. * sysdeps/s390/asm-syntax.h: New file. * sysdeps/s390/addmul_1.S: New file. * sysdeps/s390/add_n.S: New file. * sysdeps/s390/abort-instr.h: New file. * sysdeps/s390/__longjmp.c: New file. * sysdeps/s390/Makefile: New file. * sysdeps/s390/Implies: New file. * sysdeps/s390/Dist: New file. Patches by Martin Schwidefsky <schwidefsky@de.ibm.com>.
2000-08-02 15:15:00 +00:00
ifeq ($(subdir),misc)
2000-08-21 17:07:07 +00:00
sysdep_headers += sys/elf.h
endif
Update. 2001-10-02 Jakub Jelinek <jakub@redhat.com> H.J. Lu <hjl@gnu.org> * configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc if gcc supports this flag. (EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it. (gcc3): Allow glibc to be compiled with gcc 3.x. * config.h.in (EXPORT_UNWIND_FIND_FDE): Add. * config.make.in (static-libgcc, unwind-find-fde): Add. * Makerules (build-shlib-helper, build-module-helper): Use it. * scripts/versions.awk: Make sure GLIBC_ versions come first. * elf/soinit.c (__libc_global_ctors): Set tbases and dbases if necessary. (_fini): Call __deregister_frame_info_bases if __register_frame_info_bases was used to register. * elf/Versions (__register_frame_info, __deregister_frame_info): Add for GLIBC_2.0. (__register_frame_info_bases, __register_frame_info_table_bases, __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GLIBC_2.2.5. * elf/Makefile (routines): Add unwind-dw2-fde. (shared-only-routines): Add unwind-dw2-fde. * sysdeps/alpha/gccframe.h: New file. * sysdeps/arm/gccframe.h: New file. * sysdeps/generic/framestate.c: New file. * sysdeps/generic/dwarf2.h: New file. * sysdeps/generic/gccframe.h (struct object): Update from gcc 3.0. * sysdeps/generic/unwind-dw2-fde.c: New file. * sysdeps/unix/sysv/linux/ia64/unwind-dw2-fde.c: New file. * sysdeps/generic/unwind-dw2-fde.h: New file. * sysdeps/generic/unwind-dw2.c: New file. * sysdeps/generic/unwind-pe.h: New file. * sysdeps/generic/unwind.h: New file. * sysdeps/hppa/gccframe.h: New file. * sysdeps/i386/gccframe.h: New file. * sysdeps/m68k/gccframe.h: New file. * sysdeps/mips/gccframe.h: New file. * sysdeps/powerpc/gccframe.h: New file. * sysdeps/s390/gccframe.h: New file. * sysdeps/sh/gccframe.h: New file. * sysdeps/sparc/gccframe.h: New file. * sysdeps/vax/gccframe.h: New file. * sysdeps/unix/sysv/linux/configure.in (libc_cv_gcc_unwind_find_fde): Set on all architectures except ia64. * sysdeps/mach/hurd/configure.in (libc_cv_gcc_unwind_find_fde): Set for i386. * sysdeps/mach/hurd/i386/Versions (__register_frame_info, __deregister_frame_info): Move to elf/Versions. * sysdeps/unix/sysv/linux/m68k/Versions: Likewise. * sysdeps/unix/sysv/linux/arm/Versions: Likewise. * sysdeps/unix/sysv/linux/alpha/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/Versions: Likewise. * sysdeps/unix/sysv/linux/mips/Versions: Likewise. * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise. * sysdeps/mach/hurd/i386/Makefile (sysdep-routines): Add framestate. * sysdeps/unix/sysv/linux/arm/Makefile: Likewise. * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise. * sysdeps/unix/sysv/linux/i386/Makefile: Likewise. * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise. * sysdeps/unix/sysv/linux/mips/Makefile: Likewise. * sysdeps/unix/sysv/linux/powerpc/Makefile: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise. * sysdeps/unix/sysv/linux/sparc/Makefile: Likewise. * sysdeps/unix/sysv/linux/ia64/ldd-rewrite.sed: New file. * sysdeps/unix/sysv/linux/s390/ldd-rewrite.sed: New file. * sysdeps/generic/strnlen.c: New file.
2001-11-16 01:27:24 +00:00
ifeq ($(subdir),elf)
ifeq (yes,$(build-shared))
# This is needed to support g++ v2 and v3.
sysdep_routines += framestate
shared-only-routines += framestate
endif
endif
ifeq ($(subdir),stdlib)
sysdep_routines += __makecontext_ret
endif
Build divdi3 only for architecture that required it As noted in [1], divdi3 object is only exported in a handful ABIs (i386, m68k, powerpc32, s390-32, and ia64), however it is built for all current architectures regardless. This patch refact the make rules for this object to so only the aforementioned architectures that actually require it builds it. Also, to avoid internal PLT calls to the exported symbol from the module, glibc uses an internal header (symbol-hacks.h) which is unrequired (and in fact breaks the build for architectures that intend to get symbol definitions from libgcc.a). The patch also changes it to create its own header (divdi3-symbol-hacks.h) and adjust the architectures that require it accordingly. I checked the build/check (with run-built-tests=no) on the following architectures (which I think must cover all supported ABI/builds) using GCC 6.3: aarch64-linux-gnu alpha-linux-gnu arm-linux-gnueabihf hppa-linux-gnu ia64-linux-gnu m68k-linux-gnu microblaze-linux-gnu mips64-n32-linux-gnu mips-linux-gnu mips64-linux-gnu nios2-linux-gnu powerpc-linux-gnu powerpc-linux-gnu-power4 powerpc64-linux-gnu powerpc64le-linux-gnu s390x-linux-gnu s390-linux-gnu sh4-linux-gnu sh4-linux-gnu-soft sparc64-linux-gnu sparcv9-linux-gnu tilegx-linux-gnu tilegx-linux-gnu-32 tilepro-linux-gnu x86_64-linux-gnu x86_64-linux-gnu-x32 i686-linux-gnu I only saw one regression on sparcv9-linux-gnu (extra PLT call to .udiv) which I address in next patch in the set. It also correctly build SH with GCC 7.0.1 (without any regression from c89721e25d). [1] https://sourceware.org/ml/libc-alpha/2017-03/msg00243.html * sysdeps/i386/symbol-hacks.h: New file. * sysdeps/m68k/symbol-hacks.h: New file. * sysdeps/powerpc/powerpc32/symbol-hacks.h: New file. * sysdeps/s390/s390-32/symbol-hacks.h: New file. * sysdeps/unix/sysv/linux/i386/Makefile [$(subdir) = csu] (sysdep_routines): New rule: divdi3 object. [$(subdir) = csu] (sysdep-only-routines): Likewise. [$(subdir) = csu] (CFLAGS-divdi3.c): Likewise. * sysdeps/unix/sysv/linux/m68k/Makefile [$(subdir) = csu] (sysdep_routines): Likewise. [$(subdir) = csu] (sysdep-only-routines): Likewise. [$(subdir) = csu] (CFLAGS-divdi3.c): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/Makefile [$(subdir) = csu] (sysdep_routines): Likewise. [$(subdir) = csu] (sysdep-only-routines): Likewise. [$(subdir) = csu] (CFLAGS-divdi3.c): Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/Makefile [$(subdir) = csu] (sysdep_routines): Likewise. [$(subdir) = csu] (sysdep-only-routines): Likewise. [$(subdir) = csu] (CFLAGS-divdi3.c): Likewise. * sysdeps/wordsize-32/Makefile: Remove file. * sysdeps/wordsize-32/symbol-hacks.h: Definitions move to ... * sysdeps/wordsize-32/divdi3-symbol-hacks.h: ... here.
2017-03-15 18:44:59 +00:00
ifeq ($(subdir),csu)
ifeq (yes,$(build-shared))
sysdep_routines += divdi3
shared-only-routines += divdi3
CPPFLAGS-divdi3.c = -Din_divdi3_c
endif
endif