public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/58801] New: 4.7.2 alpha-dec-vms fails to link java front end due to language independent incpath.c:target_c_incpath referencing lanuage dependent vms.c:vms_c_register_includes
@ 2013-10-19  6:43 jay.krell at cornell dot edu
  0 siblings, 0 replies; only message in thread
From: jay.krell at cornell dot edu @ 2013-10-19  6:43 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58801

            Bug ID: 58801
           Summary: 4.7.2 alpha-dec-vms fails to link java front end due
                    to language independent incpath.c:target_c_incpath
                    referencing lanuage dependent
                    vms.c:vms_c_register_includes
           Product: gcc
           Version: 4.7.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jay.krell at cornell dot edu

4.7.2 alpha-dec-vms fails to link java front end due to language independent
incpath.c:target_c_incpath referencing lanuage dependent
vms-c.c:vms_c_register_includes



/src/gcc-4.7.2/configure -target=alpha-dec-vms -disable-nls -disable-multilib
-verbose -disable-shared



gcc   -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wno-narrowing
-Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros
-Wno-overlength-strings -Wold-style-definition -Wc++-compat   -DHAVE_CONFIG_H 
-o jc1 \
    java/class.o java/decl.o java/expr.o java/constants.o java/lang.o
java/typeck.o java/except.o java/verify-glue.o java/verify-impl.o
java/zextract.o java/jcf-io.o java/win32-host.o java/jcf-parse.o java/mangle.o
java/mangle_name.o java/builtins.o java/resource.o java/jcf-depend.o
java/jcf-path.o java/boehm.o java/java-gimplify.o main.o  libbackend.a
libcommon-target.a libcommon.a ../libcpp/libcpp.a
../libdecnumber/libdecnumber.a -L../zlib -lz -liconv libcommon.a
../libcpp/libcpp.a  -liconv ../libiberty/libiberty.a
../libdecnumber/libdecnumber.a  attribs.o   -L/obj/gcc.3/./gmp/.libs
-L/obj/gcc.3/./mpfr/.libs -L/obj/gcc.3/./mpc/src/.libs -lmpc -lmpfr -lgmp  
-L../zlib -lz



Undefined symbols:
  "_vms_c_register_includes", referenced from:
      _target_c_incpath in libbackend.a(incpath.o)




This is an easy kind of thing to fix.

 jbook2:gcc.3 jay$ grep vms_c_register_includes /src/gcc-4.7.2/gcc/config/*/*
/src/gcc-4.7.2/gcc/config/vms/vms-c.c:vms_c_register_includes (const char
*sysroot,
/src/gcc-4.7.2/gcc/config/vms/vms.h:extern void vms_c_register_includes (const
char *, const char *, int);
/src/gcc-4.7.2/gcc/config/vms/vms.h:#define TARGET_EXTRA_INCLUDES
vms_c_register_includes


jbook2:gcc.3 jay$ grep TARGET_EXTRA_INCLUDES /src/gcc-4.7.2/gcc/*inc*
/src/gcc-4.7.2/gcc/incpath.c:#if !(defined TARGET_EXTRA_INCLUDES) || !(defined
TARGET_EXTRA_PRE_INCLUDES)
/src/gcc-4.7.2/gcc/incpath.c:#ifndef TARGET_EXTRA_INCLUDES
/src/gcc-4.7.2/gcc/incpath.c:#define TARGET_EXTRA_INCLUDES
hook_void_charptr_charptr_int
/src/gcc-4.7.2/gcc/incpath.c:struct target_c_incpath_s target_c_incpath = {
TARGET_EXTRA_PRE_INCLUDES, TARGET_EXTRA_INCLUDES };


gcc/Makefile.in:
# Language-independent object files.
# We put the insn-*.o files first so that a parallel make will build
# them sooner, because they are large and otherwise tend to be the
# last objects to finish building.
OBJS = \
...
incpath.o \


incpath.c:
#if !(defined TARGET_EXTRA_INCLUDES) || !(defined TARGET_EXTRA_PRE_INCLUDES)
static void hook_void_charptr_charptr_int (const char *sysroot
ATTRIBUTE_UNUSED,
                       const char *iprefix ATTRIBUTE_UNUSED,
                       int stdinc ATTRIBUTE_UNUSED)
{
}
#endif

#ifndef TARGET_EXTRA_INCLUDES
#define TARGET_EXTRA_INCLUDES hook_void_charptr_charptr_int
#endif
#ifndef TARGET_EXTRA_PRE_INCLUDES
#define TARGET_EXTRA_PRE_INCLUDES hook_void_charptr_charptr_int
#endif

struct target_c_incpath_s target_c_incpath = { TARGET_EXTRA_PRE_INCLUDES,
TARGET_EXTRA_INCLUDES };


I think this target_c_incpath doesn't belong in a language-independent file.
or vms_c_register_includes should be in a language-independent file.
or link all the frontends into one executable.


This is likely fixed in versions.
Recording here for either posterity, or to fix in 4.7.newer, or for
people searching the bug database, though anyone trying this target
will probably have any problems and know how to figure this out.


Oh, drat, there is 4.7.3. I can check it.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-10-19  6:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-10-19  6:43 [Bug bootstrap/58801] New: 4.7.2 alpha-dec-vms fails to link java front end due to language independent incpath.c:target_c_incpath referencing lanuage dependent vms.c:vms_c_register_includes jay.krell at cornell dot edu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).