This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Ada] Building gnatdll.exe on MinGW32
- From: Danny Smith <danny_r_smith_2001 at yahoo dot co dot nz>
- To: Geert Bosch <bosch at gnat dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, obry at gnat dot com
- Date: Sun, 9 Dec 2001 13:02:26 +1100 (EST)
- Subject: Re: [Ada] Building gnatdll.exe on MinGW32
--- Geert Bosch <bosch@gnat.com> wrote: >
> On Tuesday, December 4, 2001, at 07:51 , Danny Smith wrote:
>
to ada/makefile.in and ada/make-
> > lang.in to
> > build gnatdll.exe.
>
> Your patch renames files for no good reason at all. The current naming
> scheme is to have all files use "krunched" names, see krunch.ads for
> a description.
>
Thanks. The kunching however does't happen automatically. This is the
error for "make gnatdll.exe" (after adding a rule for gnatdll.exe to
Make-lang.in:
gcc.exe -c -W -Wall -gnatpg -gnata -I- -I. -I../../../gcc/gcc/ada
../../../gc
c/gcc/ada/mdllfile.adb
mdllfile.adb:33:18: warning: file name does not match unit name, should be
"mdll
-files.adb"
make[1]: *** [mdllfile.o] Error 1
make[1]: Leaving directory `/develop/gcc/build/gcc/ada'
make: *** [gnatdll.exe] Error 2
How about this then? Tested on native mingw32 build.
Changelog
2001-12-10 Danny Smith <dannysmith@uswers.sourceforge.net>
* ada/Make-lang.in (gnatdll$(exeext)): Add rule.
* ada/Makefile.in (mdllfile.o, mdlltool.o): Add rules, using
-gnatk8 switch.
Index: ada/Make-lang.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/Make-lang.in,v
retrieving revision 1.7
diff -u -p -r1.7 Make-lang.in
--- Make-lang.in 2001/11/29 16:50:10 1.7
+++ Make-lang.in 2001/12/09 01:48:14
@@ -138,6 +138,12 @@ gnatlbr$(exeext): $(CONFIG_H) prefix.o f
$(MAKE) -C ada $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) \
../gnatlbr$(exeext)
+# Gnatdll is extra tool only used on i386-pe targets
+
+gnatdll$(exeext): $(CONFIG_H) prefix.o force
+ $(MAKE) -C ada $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) \
+ ../gnatdll$(exeext)
+
# use target-gcc
gnattools: $(GCC_PARTS) force
$(MAKE) $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) \
Index: ada/Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/Makefile.in,v
retrieving revision 1.17
diff -u -p -r1.17 Makefile.in
--- Makefile.in 2001/12/05 20:34:43 1.17
+++ Makefile.in 2001/12/09 01:48:28
@@ -1493,6 +1493,16 @@ ifeq ($(strip $(filter-out cygwin32% min
# ??? work around a gcc -O3 bug on x86
a-numaux.o : a-numaux.adb a-numaux.ads
$(ADAC) -c $(ALL_ADAFLAGS) -O2 $(ADA_INCLUDES) $<
+
+# krunch filenames
+
+mdllfile.o : mdllfile.adb mdllfile.ads
+ $(ADAC) -c $(ALL_ADAFLAGS) -gnatk8 $(ADA_INCLUDES) $<
+
+mdlltool.o : mdlltool.adb mdlltool.ads
+ $(ADAC) -c $(ALL_ADAFLAGS) -gnatk8 $(ADA_INCLUDES) $<
+
+
endif
# The runtime library for gnat comprises two directories. One contains
the
http://shopping.yahoo.com.au - Yahoo! Shopping
- Free CDs for thousands of Priority Shoppers!