This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: #import, #pragma once yadda yadda mumble grumble
- From: Andrew Pinski <pinskia at physics dot uc dot edu>
- To: Neil Booth <neil at daikokuya dot co dot uk>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Wed, 30 Jul 2003 14:36:41 -0400
- Subject: Re: #import, #pragma once yadda yadda mumble grumble
Actually this brakes bootstrap with libgcj enabled:
make[2]: *** No rule to make target `shs.h', needed by
`gnu/gcj/io/natSimpleSHSStream.lo'. Stop.
make[2]: Leaving directory
`/Volumes/UFS_Partition/pinskia/src/fsf/gcc-clean/src/objdir-nocheck/
powerpc-apple-darwin6.6/libjava'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory
`/Volumes/UFS_Partition/pinskia/src/fsf/gcc-clean/src/objdir-nocheck/
powerpc-apple-darwin6.6/libjava'
make: *** [install-target-libjava] Error 2
gcc_build: error: Installation failed
libgcj use -MD -MT: $(LIBTOOL) --tag=GCJ --mode=compile
$(GCJ_WITH_FLAGS) -fclasspath= -fbootclasspath=$(here) $(JC1FLAGS) -MD
-MT $@ -MF $(@:.lo=.d) -c
Now gcc does not produce full paths when using -MT -MD.
For an example, gnu/gcj/io/natSimpleSHSStream.d now contains:
/Volumes/UFS_Partition/pinskia/src/fsf/gcc-clean/src/libjava/gnu/gcj/
io/natSimpleSHSStream.cc \
config.h string.h machine/ansi.h ppc/ansi.h sys/cdefs.h stdlib.h \
machine/types.h ppc/types.h gnu/gcj/io/SimpleSHSStream.h \
java/io/DataOutputStream.h java/io/FilterOutputStream.h \
java/io/OutputStream.h java/lang/Object.h gcj/javaprims.h \
gcj/libgcj-config.h gcj/array.h gcj/cni.h java/lang/Class.h \
java/lang/String.h java/net/URL.h java/lang/reflect/Modifier.h \
java/security/ProtectionDomain.h java/lang/Package.h \
gnu/gcj/runtime/StackTrace.h jvm.h java-assert.h java-threads.h \
pthread.h pthread_impl.h errno.h sys/errno.h sched.h time.h \
machine/limits.h ppc/limits.h unistd.h sys/types.h sys/appleapiopts.h
\
machine/endian.h ppc/endian.h sys/unistd.h signal.h sys/signal.h \
machine/signal.h ppc/signal.h limits.h syslimits.h limits.h limits.h \
sys/syslimits.h mach/mach_types.h stdint.h mach/host_info.h \
mach/vm_statistics.h mach/machine/vm_types.h mach/ppc/vm_types.h \
mach/machine.h mach/boolean.h mach/machine/boolean.h
mach/ppc/boolean.h \
mach/time_value.h mach/memory_object_types.h mach/port.h \
mach/vm_types.h mach/exception_types.h mach/machine/exception.h \
mach/ppc/exception.h mach/thread_status.h
mach/machine/thread_status.h \
mach/ppc/thread_status.h mach/machine/thread_state.h \
mach/ppc/thread_state.h mach/processor_info.h \
mach/machine/processor_info.h mach/ppc/processor_info.h \
mach/task_info.h mach/policy.h mach/task_policy.h \
mach/task_special_ports.h mach/thread_info.h mach/thread_policy.h \
mach/thread_special_ports.h mach/clock_types.h mach/vm_attributes.h \
mach/vm_inherit.h mach/vm_behavior.h mach/vm_prot.h mach/vm_sync.h \
mach/vm_region.h mach/kmod.h mach/kern_return.h \
mach/machine/kern_return.h mach/ppc/kern_return.h mach/std_types.h \
stdint.h mach/boolean.h mach/kern_return.h mach/port.h
mach/vm_types.h \
sys/cdefs.h sys/time.h sys/appleapiopts.h sys/types.h time.h sched.h \
java-gc.h gcj/javaprims.h java/lang/Class.h string.h
java/lang/Object.h \
gcj/cni.h gcj/field.h java/lang/reflect/Field.h \
java/lang/reflect/AccessibleObject.h gcj/array.h \
java/lang/reflect/Modifier.h gnu/gcj/RawData.h jvmpi.h jni.h \
gcj/libgcj-config.h stdio.h machine/ansi.h stdarg.h \
gnu/gcj/runtime/JNIWeakRef.h java/lang/ref/WeakReference.h \
java/lang/ref/Reference.h shs.h config.h inttypes.h
See how limits.h does not include the full path.
Thanks,
Andrew Pinski