From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Clifton To: dave@hiauly1.hia.nrc.ca Cc: binutils@sourceware.cygnus.com Subject: Re: Duplicate symbols in recent cvs source Date: Thu, 01 Jul 1999 00:00:00 -0000 Message-id: <199906041443.HAA01836@elmo.cygnus.com> X-SW-Source: 1999-q2/msg00115.html Hi Dave, : After adding these, there are another similar set of duplicate : symbols: : : /bin/ld: Duplicate symbol "bfd_arm_pe_get_bfd_for_interworking", files epoc-pe-a : rm.lo and pe-arm.lo : /bin/ld: Duplicate symbol "bfd_arm_pe_process_before_allocation", files epoc-pe- : arm.lo and pe-arm.lo : /bin/ld: Duplicate symbol "bfd_arm_pe_allocate_interworking_sections", files epo : c-pe-arm.lo and pe-arm.lo : /bin/ld: Duplicate symbols are not allowed in shared libraries I have checked in the patches below to fix this problem. Cheers Nick 1999-06-04 Nick Clifton * Makefile.am: Add epoc-arm-pe target. * Makefile.in: Regenerate. * pe-arm.c: Only redefine interworking function names if they have not already been redefined. * pei-arm.c: Only redefine interworking function names if they have not already been redefined. * epoc-pe-arm.c: Redefine interworking function names to avoid a name space clash. * epoc-pei-arm.c: Redefine interworking function names to avoid a name space clash. 1999-06-04 Nick Clifton * emultempl/pe.em: If compiling for arm_epoc_pe rename interworking functions to avoid a name space clash. Index: bfd/Makefile.am =================================================================== RCS file: /cvs/binutils/binutils/bfd/Makefile.am,v retrieving revision 1.2 diff -p -r1.2 Makefile.am *** Makefile.am 1999/05/27 21:42:07 1.2 --- Makefile.am 1999/06/04 14:34:05 *************** BFD32_BACKENDS = \ *** 172,177 **** --- 172,179 ---- elf32-v850.lo \ elf32.lo \ elflink.lo \ + epoc-pe-arm.lo \ + epoc-pei-arm.lo \ hp300bsd.lo \ hp300hpux.lo \ som.lo \ *************** BFD32_BACKENDS_CFILES = \ *** 291,296 **** --- 293,300 ---- elf32-v850.c \ elf32.c \ elflink.c \ + epoc-pe-arm.c \ + epoc-pei-arm.c \ hp300bsd.c \ hp300hpux.c \ som.c \ *************** elf32.lo: elf32.c elfcode.h $(INCDIR)/bf *** 888,893 **** --- 892,903 ---- elfcore.h elflink.h elflink.lo: elflink.c $(INCDIR)/bfdlink.h elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h + epoc-pe-arm.lo: epoc-ep-arm.c pe-arm.c coff-arm.c $(INCDIR)/coff/arm.h \ + $(INCDIR)/coff/internal.h $(INCDIR)/coff/pe.h libcoff.h \ + $(INCDIR)/bfdlink.h coffcode.h peicode.h + epoc-pei-arm.lo: epoc-pei-arm.c pei-arm.c coff-arm.c $(INCDIR)/coff/arm.h \ + $(INCDIR)/coff/internal.h $(INCDIR)/coff/pe.h libcoff.h \ + $(INCDIR)/bfdlink.h coffcode.h peicode.h hp300bsd.lo: hp300bsd.c libaout.h $(INCDIR)/bfdlink.h \ aout-target.h $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h \ $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h Index: bfd/Makefile.in =================================================================== RCS file: /cvs/binutils/binutils/bfd/Makefile.in,v retrieving revision 1.2 diff -p -r1.2 Makefile.in *** Makefile.in 1999/05/27 21:42:08 1.2 --- Makefile.in 1999/06/04 14:34:15 *************** BFD32_BACKENDS = \ *** 291,296 **** --- 291,298 ---- elf32-v850.lo \ elf32.lo \ elflink.lo \ + epoc-pe-arm.lo \ + epoc-pei-arm.lo \ hp300bsd.lo \ hp300hpux.lo \ som.lo \ *************** BFD32_BACKENDS_CFILES = \ *** 411,416 **** --- 413,420 ---- elf32-v850.c \ elf32.c \ elflink.c \ + epoc-pe-arm.c \ + epoc-pei-arm.c \ hp300bsd.c \ hp300hpux.c \ som.c \ *************** elf32.lo: elf32.c elfcode.h $(INCDIR)/bf *** 1418,1423 **** --- 1422,1433 ---- elfcore.h elflink.h elflink.lo: elflink.c $(INCDIR)/bfdlink.h elf-bfd.h \ $(INCDIR)/elf/common.h $(INCDIR)/elf/internal.h $(INCDIR)/elf/external.h + epoc-pe-arm.lo: epoc-pe-arm.c pe-arm.c coff-arm.c $(INCDIR)/coff/arm.h \ + $(INCDIR)/coff/internal.h $(INCDIR)/coff/pe.h libcoff.h \ + $(INCDIR)/bfdlink.h coffcode.h peicode.h + epoc-pei-arm.lo: epoc-pei-arm.c pei-arm.c coff-arm.c $(INCDIR)/coff/arm.h \ + $(INCDIR)/coff/internal.h $(INCDIR)/coff/pe.h libcoff.h \ + $(INCDIR)/bfdlink.h coffcode.h peicode.h hp300bsd.lo: hp300bsd.c libaout.h $(INCDIR)/bfdlink.h \ aout-target.h $(INCDIR)/aout/aout64.h $(INCDIR)/aout/stab_gnu.h \ $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h Index: bfd/pe-arm.c =================================================================== RCS file: /cvs/binutils/binutils/bfd/pe-arm.c,v retrieving revision 1.2 diff -p -r1.2 pe-arm.c *** pe-arm.c 1999/06/02 14:27:08 1.2 --- pe-arm.c 1999/06/04 14:34:33 *************** Foundation, Inc., 59 Temple Place - Suit *** 31,41 **** #define PCRELOFFSET true #define COFF_LONG_SECTION_NAMES #define bfd_arm_allocate_interworking_sections \ bfd_arm_pe_allocate_interworking_sections #define bfd_arm_get_bfd_for_interworking \ bfd_arm_pe_get_bfd_for_interworking #define bfd_arm_process_before_allocation \ bfd_arm_pe_process_before_allocation ! #include "coff-arm.c" --- 31,43 ---- #define PCRELOFFSET true #define COFF_LONG_SECTION_NAMES + #ifndef bfd_arm_allocate_interworking_sections #define bfd_arm_allocate_interworking_sections \ bfd_arm_pe_allocate_interworking_sections #define bfd_arm_get_bfd_for_interworking \ bfd_arm_pe_get_bfd_for_interworking #define bfd_arm_process_before_allocation \ bfd_arm_pe_process_before_allocation ! #endif ! #include "coff-arm.c" Index: bfd/pei-arm.c =================================================================== RCS file: /cvs/binutils/binutils/bfd/pei-arm.c,v retrieving revision 1.2 diff -p -r1.2 pei-arm.c *** pei-arm.c 1999/06/02 14:27:10 1.2 --- pei-arm.c 1999/06/04 14:34:45 *************** Foundation, Inc., 59 Temple Place - Suit *** 33,43 **** #define PCRELOFFSET true #define COFF_LONG_SECTION_NAMES #define bfd_arm_allocate_interworking_sections \ bfd_arm_pe_allocate_interworking_sections #define bfd_arm_get_bfd_for_interworking \ bfd_arm_pe_get_bfd_for_interworking #define bfd_arm_process_before_allocation \ bfd_arm_pe_process_before_allocation ! #include "coff-arm.c" --- 33,45 ---- #define PCRELOFFSET true #define COFF_LONG_SECTION_NAMES + #ifndef bfd_arm_allocate_interworking_sections #define bfd_arm_allocate_interworking_sections \ bfd_arm_pe_allocate_interworking_sections #define bfd_arm_get_bfd_for_interworking \ bfd_arm_pe_get_bfd_for_interworking #define bfd_arm_process_before_allocation \ bfd_arm_pe_process_before_allocation ! #endif ! #include "coff-arm.c" Index: bfd/epoc-pe-arm.c =================================================================== RCS file: /cvs/binutils/binutils/bfd/epoc-pe-arm.c,v retrieving revision 1.1.1.1 diff -p -r1.1.1.1 epoc-pe-arm.c *** epoc-pe-arm.c 1999/05/03 07:28:57 1.1.1.1 --- epoc-pe-arm.c 1999/06/04 14:34:55 *************** Foundation, Inc., 59 Temple Place - Suit *** 25,30 **** --- 25,36 ---- #define TARGET_BIG_SYM arm_epoc_pe_big_vec #define TARGET_BIG_NAME "epoc-pe-arm-big" + #define bfd_arm_allocate_interworking_sections \ + bfd_arm_epoc_pe_allocate_interworking_sections + #define bfd_arm_get_bfd_for_interworking \ + bfd_arm_epoc_pe_get_bfd_for_interworking + #define bfd_arm_process_before_allocation \ + bfd_arm_epoc_pe_process_before_allocation #include "pe-arm.c" Index: bfd/epoc-pei-arm.c =================================================================== RCS file: /cvs/binutils/binutils/bfd/epoc-pei-arm.c,v retrieving revision 1.1.1.1 diff -p -r1.1.1.1 epoc-pei-arm.c *** epoc-pei-arm.c 1999/05/03 07:28:57 1.1.1.1 --- epoc-pei-arm.c 1999/06/04 14:35:04 *************** Foundation, Inc., 59 Temple Place - Suit *** 25,29 **** --- 25,36 ---- #define TARGET_BIG_SYM arm_epoc_pei_big_vec #define TARGET_BIG_NAME "epoc-pei-arm-big" + #define bfd_arm_allocate_interworking_sections \ + bfd_arm_epoc_pe_allocate_interworking_sections + #define bfd_arm_get_bfd_for_interworking \ + bfd_arm_epoc_pe_get_bfd_for_interworking + #define bfd_arm_process_before_allocation \ + bfd_arm_epoc_pe_process_before_allocation + #include "pei-arm.c" Index: ld/emultempl/pe.em =================================================================== RCS file: /cvs/binutils/binutils/ld/emultempl/pe.em,v retrieving revision 1.4 diff -p -r1.4 pe.em *** pe.em 1999/06/02 14:26:01 1.4 --- pe.em 1999/06/04 14:35:22 *************** Foundation, Inc., 59 Temple Place - Suit *** 54,59 **** --- 54,68 ---- #define PE_DEF_SUBSYSTEM 3 + #ifdef TARGET_IS_arm_epoc_pe + #define bfd_arm_pe_allocate_interworking_sections \ + bfd_arm_epoc_pe_allocate_interworking_sections + #define bfd_arm_pe_get_bfd_for_interworking \ + bfd_arm_epoc_pe_get_bfd_for_interworking + #define bfd_arm_pe_process_before_allocation \ + bfd_arm_epoc_pe_process_before_allocation + #endif + static void gld_${EMULATION_NAME}_set_symbols PARAMS ((void)); static void gld_${EMULATION_NAME}_after_open PARAMS ((void)); static void gld_${EMULATION_NAME}_before_parse PARAMS ((void));