diff -Nrc3pad gcc-3.2.1/gcc/ada/5rosinte.ads gcc-3.2.2/gcc/ada/5rosinte.ads *** gcc-3.2.1/gcc/ada/5rosinte.ads Sat May 4 03:27:15 2002 --- gcc-3.2.2/gcc/ada/5rosinte.ads Wed Jan 29 17:34:08 2003 *************** *** 6,12 **** -- -- -- S p e c -- -- -- ! -- $Revision: 1.1.16.1 $ -- -- -- Copyright (C) 1997-2001 Free Software Foundation, Inc. -- -- -- --- 6,12 ---- -- -- -- S p e c -- -- -- ! -- $Revision: 1.1.16.1.4.1 $ -- -- -- Copyright (C) 1997-2001 Free Software Foundation, Inc. -- -- -- *************** package System.OS_Interface is *** 107,112 **** --- 107,113 ---- SIGTERM : constant := 15; -- software termination signal from kill SIGUSR1 : constant := 16; -- user defined signal 1 SIGUSR2 : constant := 17; -- user defined signal 2 + SIGXCPU : constant := 0; -- XCPU SIGADAABORT : constant := SIGABRT; diff -Nrc3pad gcc-3.2.1/gcc/ada/5rtpopsp.adb gcc-3.2.2/gcc/ada/5rtpopsp.adb *** gcc-3.2.1/gcc/ada/5rtpopsp.adb Thu Jan 1 00:00:00 1970 --- gcc-3.2.2/gcc/ada/5rtpopsp.adb Wed Jan 29 17:34:08 2003 *************** *** 0 **** --- 1,266 ---- + ------------------------------------------------------------------------------ + -- -- + -- GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS -- + -- -- + -- S Y S T E M . T A S K _ P R I M I T I V E S . O P E R A T I O N S . -- + -- S P E C I F I C -- + -- -- + -- B o d y -- + -- -- + -- $Revision: 1.1.2.1 $ + -- -- + -- Copyright (C) 1991-1999, Florida State University -- + -- -- + -- GNARL is free software; you can redistribute it and/or modify it under -- + -- terms of the GNU General Public License as published by the Free Soft- -- + -- ware Foundation; either version 2, or (at your option) any later ver- -- + -- sion. GNARL is distributed in the hope that it will be useful, but WITH- -- + -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -- + -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- + -- for more details. You should have received a copy of the GNU General -- + -- Public License distributed with GNARL; see file COPYING. If not, write -- + -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, -- + -- MA 02111-1307, USA. -- + -- -- + -- As a special exception, if other files instantiate generics from this -- + -- unit, or you link this unit with other files to produce an executable, -- + -- this unit does not by itself cause the resulting executable to be -- + -- covered by the GNU General Public License. This exception does not -- + -- however invalidate any other reasons why the executable file might be -- + -- covered by the GNU Public License. -- + -- -- + -- GNARL was developed by the GNARL team at Florida State University. It is -- + -- now maintained by Ada Core Technologies Inc. in cooperation with Florida -- + -- State University (http://www.gnat.com). -- + -- -- + ------------------------------------------------------------------------------ + + -- This is a POSIX version of this package where foreign threads are + -- recognized. + -- Currently, DEC Unix, SCO UnixWare 7 and RTEMS use this version. + + with System.Soft_Links; + -- used to initialize TSD for a C thread, in function Self + + separate (System.Task_Primitives.Operations) + package body Specific is + + ------------------ + -- Local Data -- + ------------------ + + -- The followings are logically constants, but need to be initialized + -- at run time. + + -- The following gives the Ada run-time direct access to a variable + -- context switched by RTEMS at the lowest level. + + RTEMS_Ada_Self : System.Address; + pragma Import (C, RTEMS_Ada_Self, "rtems_ada_self"); + + -- The following are used to allow the Self function to + -- automatically generate ATCB's for C threads that happen to call + -- Ada procedure, which in turn happen to call the Ada runtime system. + + type Fake_ATCB; + type Fake_ATCB_Ptr is access Fake_ATCB; + type Fake_ATCB is record + Stack_Base : Interfaces.C.unsigned := 0; + -- A value of zero indicates the node is not in use. + Next : Fake_ATCB_Ptr; + Real_ATCB : aliased Ada_Task_Control_Block (0); + end record; + + Fake_ATCB_List : Fake_ATCB_Ptr; + -- A linear linked list. + -- The list is protected by All_Tasks_L; + -- Nodes are added to this list from the front. + -- Once a node is added to this list, it is never removed. + + Fake_Task_Elaborated : aliased Boolean := True; + -- Used to identified fake tasks (i.e., non-Ada Threads). + + Next_Fake_ATCB : Fake_ATCB_Ptr; + -- Used to allocate one Fake_ATCB in advance. See comment in New_Fake_ATCB + + ----------------------- + -- Local Subprograms -- + ----------------------- + + --------------------------------- + -- Support for New_Fake_ATCB -- + --------------------------------- + + function New_Fake_ATCB return Task_ID; + -- Allocate and Initialize a new ATCB. This code can safely be called from + -- a foreign thread, as it doesn't access implicitely or explicitely + -- "self" before having initialized the new ATCB. + + ------------------- + -- New_Fake_ATCB -- + ------------------- + + function New_Fake_ATCB return Task_ID is + Self_ID : Task_ID; + P, Q : Fake_ATCB_Ptr; + Succeeded : Boolean; + + begin + -- This section is ticklish. + -- We dare not call anything that might require an ATCB, until + -- we have the new ATCB in place. + + Write_Lock (All_Tasks_L'Access); + Q := null; + P := Fake_ATCB_List; + + while P /= null loop + if P.Stack_Base = 0 then + Q := P; + end if; + + P := P.Next; + end loop; + + if Q = null then + + -- Create a new ATCB with zero entries. + + Self_ID := Next_Fake_ATCB.Real_ATCB'Access; + Next_Fake_ATCB.Stack_Base := 1; + Next_Fake_ATCB.Next := Fake_ATCB_List; + Fake_ATCB_List := Next_Fake_ATCB; + Next_Fake_ATCB := null; + + else + -- Reuse an existing fake ATCB. + + Self_ID := Q.Real_ATCB'Access; + Q.Stack_Base := 1; + end if; + + -- Record this as the Task_ID for the current thread. + + Self_ID.Common.LL.Thread := pthread_self; + + RTEMS_Ada_Self := To_Address (Self_ID); + + -- Do the standard initializations + + System.Tasking.Initialize_ATCB + (Self_ID, null, Null_Address, Null_Task, Fake_Task_Elaborated'Access, + System.Priority'First, Task_Info.Unspecified_Task_Info, 0, Self_ID, + Succeeded); + pragma Assert (Succeeded); + + -- Finally, it is safe to use an allocator in this thread. + + if Next_Fake_ATCB = null then + Next_Fake_ATCB := new Fake_ATCB; + end if; + + Self_ID.Common.State := Runnable; + Self_ID.Awake_Count := 1; + + -- Since this is not an ordinary Ada task, we will start out undeferred + + Self_ID.Deferral_Level := 0; + + System.Soft_Links.Create_TSD (Self_ID.Common.Compiler_Data); + + -- ???? + -- The following call is commented out to avoid dependence on + -- the System.Tasking.Initialization package. + -- It seems that if we want Ada.Task_Attributes to work correctly + -- for C threads we will need to raise the visibility of this soft + -- link to System.Soft_Links. + -- We are putting that off until this new functionality is otherwise + -- stable. + -- System.Tasking.Initialization.Initialize_Attributes_Link.all (T); + + for J in Known_Tasks'Range loop + if Known_Tasks (J) = null then + Known_Tasks (J) := Self_ID; + Self_ID.Known_Tasks_Index := J; + exit; + end if; + end loop; + + -- Must not unlock until Next_ATCB is again allocated. + + Unlock (All_Tasks_L'Access); + return Self_ID; + end New_Fake_ATCB; + + ---------------- + -- Initialize -- + ---------------- + + procedure Initialize (Environment_Task : Task_ID) is + + begin + RTEMS_Ada_Self := To_Address (Environment_Task); + + -- Create a free ATCB for use on the Fake_ATCB_List. + + Next_Fake_ATCB := new Fake_ATCB; + end Initialize; + + --------- + -- Set -- + --------- + + procedure Set (Self_Id : Task_ID) is + + begin + RTEMS_Ada_Self := To_Address (Self_Id); + end Set; + + ---------- + -- Self -- + ---------- + + -- To make Ada tasks and C threads interoperate better, we have + -- added some functionality to Self. Suppose a C main program + -- (with threads) calls an Ada procedure and the Ada procedure + -- calls the tasking runtime system. Eventually, a call will be + -- made to self. Since the call is not coming from an Ada task, + -- there will be no corresponding ATCB. + + -- (The entire Ada run-time system may not have been elaborated, + -- either, but that is a different problem, that we will need to + -- solve another way.) + + -- What we do in Self is to catch references that do not come + -- from recognized Ada tasks, and create an ATCB for the calling + -- thread. + + -- The new ATCB will be "detached" from the normal Ada task + -- master hierarchy, much like the existing implicitly created + -- signal-server tasks. + + -- We will also use such points to poll for disappearance of the + -- threads associated with any implicit ATCBs that we created + -- earlier, and take the opportunity to recover them. + + -- A nasty problem here is the limitations of the compilation + -- order dependency, and in particular the GNARL/GNULLI layering. + -- To initialize an ATCB we need to assume System.Tasking has + -- been elaborated. + + function Self return Task_ID is + Result : System.Address; + + begin + Result := RTEMS_Ada_Self; + + -- If the key value is Null, then it is a non-Ada task. + + if Result = System.Null_Address then + return New_Fake_ATCB; + end if; + + return To_Task_ID (Result); + end Self; + + end Specific; diff -Nrc3pad gcc-3.2.1/gcc/ada/ChangeLog gcc-3.2.2/gcc/ada/ChangeLog *** gcc-3.2.1/gcc/ada/ChangeLog Tue Nov 19 17:48:10 2002 --- gcc-3.2.2/gcc/ada/ChangeLog Wed Feb 5 03:00:25 2003 *************** *** 1,3 **** --- 1,49 ---- + 2003-02-05 Release Manager + + * GCC 3.2.2 Released. + + 2003-01-29 Joel Sherrill + + * 5rosinte.ads: Add SIGXCPU. + * 5rtpopsp.adb: New file. + * Make-lang.in: Do not build gnatpsta and gnatpsys when cross. + * Makefile.in: Recognize more RTEMS targets and add the RTEMS + specific file 5rtpopsp.adb. + * adaint.h: Add include of when target is RTEMS. This + is likely needed for all newlib targets. + * init.c: Add RTEMS specific version of __gnat_initialize(). + + 2003-01-29 Christian Cornelssen + + * Make-lang.in (gnattools, ada.install-common): + Complete indentation fixes. + (ada.install-common): Now really remove the erroneous and + redundant gnatchop installation commands. + + 2003-01-28 Laurent Guerby + + PR ada/8344 + * final.c: rename to adafinal.c to avoid file name conflicts with gcc file. + * Makefile.in: match previous change. + + 2003-01-28 Christian Cornelssen + + * Make-lang.in (ada.install-common): Let $(DESTDIR)$(bindir) + be created if necessary. Remove erroneous and redundant + gnatchop installation commands. Test for gnatdll before + attempting to install it. Use initial tab instead of spaces + in continuation lines. + (ada.uninstall): Uninstall gnat instead of gnatcmd. + Also uninstall gnatfind, gnatxref, gnatlbr, and gnatdll + from all plausible locations. + + * Make-lang.in (ada.install-common, ada.uninstall): + Prepend $(DESTDIR) to the destination directory in all + (un)installation commands. + * Makefile.in (install-gnatlib): Ditto. Rewrite $(LN) + commands to support DESTDIR with "ln" as well as with + "ln -s". + 2002-11-19 Release Manager * GCC 3.2.1 Released. *************** Thu Nov 15 18:16:17 2001 Richard Kenner *** 2706,2708 **** --- 2752,2765 ---- 2001-10-02 Geert Bosch * misc.c (insert_default_attributes): Add dummy version. + 2003-01-27 Christian Cornelssen + + * Make-lang.in (ada.install-common): Let $(DESTDIR)$(bindir) + be created if necessary. Remove erroneous and redundant + gnatchop installation commands. Test for gnatdll before + attempting to install it. Use initial tab instead of spaces + in continuation lines. + (ada.uninstall): Uninstall gnat instead of gnatcmd. + Also uninstall gnatfind, gnatxref, gnatlbr, and gnatdll + from all plausible locations. + diff -Nrc3pad gcc-3.2.1/gcc/ada/Make-lang.in gcc-3.2.2/gcc/ada/Make-lang.in *** gcc-3.2.1/gcc/ada/Make-lang.in Tue Apr 30 19:02:18 2002 --- gcc-3.2.2/gcc/ada/Make-lang.in Wed Jan 29 17:34:08 2003 *************** gnattools: $(GCC_PARTS) force *** 145,151 **** gnatkr$(exeext) gnatlink$(exeext) \ gnatls$(exeext) gnatmake$(exeext) \ gnatprep$(exeext) gnatpsta$(exeext) gnatpsys$(exeext) \ ! gnatxref$(exeext) gnatfind$(exeext) $(EXTRA_GNATTOOLS) # use host-gcc cross-gnattools: force --- 145,151 ---- gnatkr$(exeext) gnatlink$(exeext) \ gnatls$(exeext) gnatmake$(exeext) \ gnatprep$(exeext) gnatpsta$(exeext) gnatpsys$(exeext) \ ! gnatxref$(exeext) gnatfind$(exeext) $(EXTRA_GNATTOOLS) # use host-gcc cross-gnattools: force *************** cross-gnattools: force *** 153,159 **** gnatbl$(exeext) gnatchop$(exeext) gnatcmd$(exeext) \ gnatkr$(exeext) gnatlink$(exeext) \ gnatls$(exeext) gnatmake$(exeext) \ ! gnatprep$(exeext) gnatpsta$(exeext) gnatpsys$(exeext) \ gnatxref$(exeext) gnatfind$(exeext) $(EXTRA_GNATTOOLS) # use target-gcc --- 153,159 ---- gnatbl$(exeext) gnatchop$(exeext) gnatcmd$(exeext) \ gnatkr$(exeext) gnatlink$(exeext) \ gnatls$(exeext) gnatmake$(exeext) \ ! gnatprep$(exeext) \ gnatxref$(exeext) gnatfind$(exeext) $(EXTRA_GNATTOOLS) # use target-gcc *************** ada.install-normal: *** 261,477 **** # likewise for gnatf, gnatchop, and gnatlink, gnatkr, gnatmake, gnatcmd, # gnatprep, gnatbl, gnatls, gnatxref, gnatfind ada.install-common: -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatbind-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatbind$(exeext); \ ! $(INSTALL_PROGRAM) gnatbind-cross$(exeext) $(bindir)/$(target_alias)-gnatbind$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatbind$(exeext); \ ! $(INSTALL_PROGRAM) gnatbind-cross$(exeext) $(tooldir)/bin/gnatbind$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatbind$(exeext); \ ! $(INSTALL_PROGRAM) gnatbind$(exeext) $(bindir)/gnatbind$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatbl-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatbl$(exeext); \ ! $(INSTALL_PROGRAM) gnatbl-cross$(exeext) $(bindir)/$(target_alias)-gnatbl$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatbl$(exeext); \ ! $(INSTALL_PROGRAM) gnatbl-cross$(exeext) $(tooldir)/bin/gnatbl$(exeext); \ ! fi; \ ! else \ ! $(RM) $(bindir)/gnatbl$(exeext); \ ! $(INSTALL_PROGRAM) gnatbl$(exeext) $(bindir)/gnatbl$(exeext); \ ! fi ; \ ! fi ! -if [ -f gnat1$(exeext) ] ; \ ! then \ ! if [ -f gnatchop-cross$(exeext) ] ; \ ! then \ ! $(RM) $(bindir)/$(target_alias)-gnatchop$(shext); \ ! $(INSTALL_PROGRAM) $(srcdir)/ada/gnatchop$(shext) $(bindir)/$(target_alias)-gnatchop$(shext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatchop$(shext); \ ! $(INSTALL_PROGRAM) gnatchop$(shext) $(tooldir)/bin/gnatchop$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatchop$(shext); \ ! $(INSTALL_PROGRAM) $(srcdir)/ada/gnatchop$(shext) $(bindir)/gnatchop$(shext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatchop-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatchop$(exeext); \ ! $(INSTALL_PROGRAM) gnatchop-cross$(exeext) $(bindir)/$(target_alias)-gnatchop$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatchop$(exeext); \ ! $(INSTALL_PROGRAM) gnatchop-cross$(exeext) $(tooldir)/bin/gnatchop$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatchop$(exeext); \ ! $(INSTALL_PROGRAM) gnatchop$(exeext) $(bindir)/gnatchop$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatcmd-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnat$(exeext); \ ! $(INSTALL_PROGRAM) gnatcmd-cross$(exeext) $(bindir)/$(target_alias)-gnat$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnat$(exeext); \ ! $(INSTALL_PROGRAM) gnatcmd-cross$(exeext) $(tooldir)/bin/gnat$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnat$(exeext); \ ! $(INSTALL_PROGRAM) gnatcmd$(exeext) $(bindir)/gnat$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatkr-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatkr$(exeext); \ ! $(INSTALL_PROGRAM) gnatkr-cross$(exeext) $(bindir)/$(target_alias)-gnatkr$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatkr$(exeext); \ ! $(INSTALL_PROGRAM) gnatkr-cross$(exeext) $(tooldir)/bin/gnatkr$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatkr$(exeext); \ ! $(INSTALL_PROGRAM) gnatkr$(exeext) $(bindir)/gnatkr$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatlink-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatlink$(exeext); \ ! $(INSTALL_PROGRAM) gnatlink-cross$(exeext) $(bindir)/$(target_alias)-gnatlink$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatlink$(exeext); \ ! $(INSTALL_PROGRAM) gnatlink-cross$(exeext) $(tooldir)/bin/gnatlink$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatlink$(exeext); \ ! $(INSTALL_PROGRAM) gnatlink$(exeext) $(bindir)/gnatlink$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatls-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatls$(exeext); \ ! $(INSTALL_PROGRAM) gnatls-cross$(exeext) $(bindir)/$(target_alias)-gnatls$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatls$(exeext); \ ! $(INSTALL_PROGRAM) gnatls-cross$(exeext) $(tooldir)/bin/gnatls$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatls$(exeext); \ ! $(INSTALL_PROGRAM) gnatls$(exeext) $(bindir)/gnatls$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatmake-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatmake$(exeext); \ ! $(INSTALL_PROGRAM) gnatmake-cross$(exeext) $(bindir)/$(target_alias)-gnatmake$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatmake$(exeext); \ ! $(INSTALL_PROGRAM) gnatmake-cross$(exeext) $(tooldir)/bin/gnatmake$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatmake$(exeext); \ ! $(INSTALL_PROGRAM) gnatmake$(exeext) $(bindir)/gnatmake$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatmem-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatmem$(exeext); \ ! $(INSTALL_PROGRAM) gnatmem-cross$(exeext) $(bindir)/$(target_alias)-gnatmem$(exeext); \ else \ ! $(RM) $(bindir)/gnatmem$(exeext); \ ! $(INSTALL_PROGRAM) gnatmem$(exeext) $(bindir)/gnatmem$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatprep-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatprep$(exeext); \ ! $(INSTALL_PROGRAM) gnatprep-cross$(exeext) $(bindir)/$(target_alias)-gnatprep$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatprep$(exeext); \ ! $(INSTALL_PROGRAM) gnatprep-cross$(exeext) $(tooldir)/bin/gnatprep$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatprep$(exeext); \ ! $(INSTALL_PROGRAM) gnatprep$(exeext) $(bindir)/gnatprep$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatpsta-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatpsta$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsta-cross$(exeext) $(bindir)/$(target_alias)-gnatpsta$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatpsta$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsta-cross$(exeext) $(tooldir)/bin/gnatpsta$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatpsta$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsta$(exeext) $(bindir)/gnatpsta$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatpsys-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatpsys$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsys-cross$(exeext) $(bindir)/$(target_alias)-gnatpsys$(exeext); \ ! if [ -d $(tooldir)/bin/. ] ; then \ ! rm -f $(tooldir)/bin/gnatpsys$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsys-cross$(exeext) $(tooldir)/bin/gnatpsys$(exeext); \ ! fi; \ else \ ! $(RM) $(bindir)/gnatpsys$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsys$(exeext) $(bindir)/gnatpsys$(exeext); \ fi ; \ ! fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatxref-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatxref$(exeext); \ ! $(INSTALL_PROGRAM) gnatxref-cross$(exeext) $(bindir)/$(target_alias)-gnatxref$(exeext); \ else \ ! $(RM) $(bindir)/gnatxref$(exeext); \ ! $(INSTALL_PROGRAM) gnatxref$(exeext) $(bindir)/gnatxref$(exeext); \ fi ; \ ! fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatfind-cross$(exeext) ] ; \ then \ ! $(RM) $(bindir)/$(target_alias)-gnatfind$(exeext); \ ! $(INSTALL_PROGRAM) gnatfind-cross$(exeext) $(bindir)/$(target_alias)-gnatfind$(exeext); \ else \ ! $(RM) $(bindir)/gnatfind$(exeext); \ ! $(INSTALL_PROGRAM) gnatfind$(exeext) $(bindir)/gnatfind$(exeext); \ fi ; \ fi # --- 261,463 ---- # likewise for gnatf, gnatchop, and gnatlink, gnatkr, gnatmake, gnatcmd, # gnatprep, gnatbl, gnatls, gnatxref, gnatfind ada.install-common: + $(MKDIR) $(DESTDIR)$(bindir) -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatbind-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatbind$(exeext); \ ! $(INSTALL_PROGRAM) gnatbind-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatbind$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatbind$(exeext); \ ! $(INSTALL_PROGRAM) gnatbind-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatbind$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatbind$(exeext); \ ! $(INSTALL_PROGRAM) gnatbind$(exeext) $(DESTDIR)$(bindir)/gnatbind$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatbl-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatbl$(exeext); \ ! $(INSTALL_PROGRAM) gnatbl-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatbl$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatbl$(exeext); \ ! $(INSTALL_PROGRAM) gnatbl-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatbl$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatbl$(exeext); \ ! $(INSTALL_PROGRAM) gnatbl$(exeext) $(DESTDIR)$(bindir)/gnatbl$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatchop-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatchop$(exeext); \ ! $(INSTALL_PROGRAM) gnatchop-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatchop$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatchop$(exeext); \ ! $(INSTALL_PROGRAM) gnatchop-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatchop$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatchop$(exeext); \ ! $(INSTALL_PROGRAM) gnatchop$(exeext) $(DESTDIR)$(bindir)/gnatchop$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatcmd-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnat$(exeext); \ ! $(INSTALL_PROGRAM) gnatcmd-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnat$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnat$(exeext); \ ! $(INSTALL_PROGRAM) gnatcmd-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnat$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnat$(exeext); \ ! $(INSTALL_PROGRAM) gnatcmd$(exeext) $(DESTDIR)$(bindir)/gnat$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatkr-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatkr$(exeext); \ ! $(INSTALL_PROGRAM) gnatkr-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatkr$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatkr$(exeext); \ ! $(INSTALL_PROGRAM) gnatkr-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatkr$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatkr$(exeext); \ ! $(INSTALL_PROGRAM) gnatkr$(exeext) $(DESTDIR)$(bindir)/gnatkr$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatlink-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatlink$(exeext); \ ! $(INSTALL_PROGRAM) gnatlink-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatlink$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatlink$(exeext); \ ! $(INSTALL_PROGRAM) gnatlink-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatlink$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatlink$(exeext); \ ! $(INSTALL_PROGRAM) gnatlink$(exeext) $(DESTDIR)$(bindir)/gnatlink$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatls-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatls$(exeext); \ ! $(INSTALL_PROGRAM) gnatls-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatls$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatls$(exeext); \ ! $(INSTALL_PROGRAM) gnatls-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatls$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatls$(exeext); \ ! $(INSTALL_PROGRAM) gnatls$(exeext) $(DESTDIR)$(bindir)/gnatls$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatmake-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatmake$(exeext); \ ! $(INSTALL_PROGRAM) gnatmake-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatmake$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatmake$(exeext); \ ! $(INSTALL_PROGRAM) gnatmake-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatmake$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatmake$(exeext); \ ! $(INSTALL_PROGRAM) gnatmake$(exeext) $(DESTDIR)$(bindir)/gnatmake$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatmem-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatmem$(exeext); \ ! $(INSTALL_PROGRAM) gnatmem-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatmem$(exeext); \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatmem$(exeext); \ ! $(INSTALL_PROGRAM) gnatmem$(exeext) $(DESTDIR)$(bindir)/gnatmem$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatprep-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatprep$(exeext); \ ! $(INSTALL_PROGRAM) gnatprep-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatprep$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatprep$(exeext); \ ! $(INSTALL_PROGRAM) gnatprep-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatprep$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatprep$(exeext); \ ! $(INSTALL_PROGRAM) gnatprep$(exeext) $(DESTDIR)$(bindir)/gnatprep$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatpsta-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatpsta$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsta-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatpsta$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatpsta$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsta-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatpsta$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatpsta$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsta$(exeext) $(DESTDIR)$(bindir)/gnatpsta$(exeext); \ fi ; \ fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatpsys-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatpsys$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsys-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatpsys$(exeext); \ ! if [ -d $(DESTDIR)$(tooldir)/bin/. ] ; then \ ! rm -f $(DESTDIR)$(tooldir)/bin/gnatpsys$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsys-cross$(exeext) $(DESTDIR)$(tooldir)/bin/gnatpsys$(exeext); \ ! fi; \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatpsys$(exeext); \ ! $(INSTALL_PROGRAM) gnatpsys$(exeext) $(DESTDIR)$(bindir)/gnatpsys$(exeext); \ fi ; \ ! fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatxref-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatxref$(exeext); \ ! $(INSTALL_PROGRAM) gnatxref-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatxref$(exeext); \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatxref$(exeext); \ ! $(INSTALL_PROGRAM) gnatxref$(exeext) $(DESTDIR)$(bindir)/gnatxref$(exeext); \ fi ; \ ! fi -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatfind-cross$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatfind$(exeext); \ ! $(INSTALL_PROGRAM) gnatfind-cross$(exeext) $(DESTDIR)$(bindir)/$(target_alias)-gnatfind$(exeext); \ else \ ! $(RM) $(DESTDIR)$(bindir)/gnatfind$(exeext); \ ! $(INSTALL_PROGRAM) gnatfind$(exeext) $(DESTDIR)$(bindir)/gnatfind$(exeext); \ fi ; \ fi # *************** ada.install-common: *** 479,493 **** # -if [ -f gnat1$(exeext) ] ; \ then \ - if [ -f gnatchop$(exeext) ] ; \ - then \ - $(RM) $(bindir)/gnatchop$(exeext); \ - $(INSTALL_PROGRAM) gnatchop$(exeext) $(bindir)/gnatchop$(exeext); \ - fi ; \ if [ -f gnatlbr$(exeext) ] ; \ then \ ! $(RM) $(bindir)/gnatlbr$(exeext); \ ! $(INSTALL_PROGRAM) gnatlbr$(exeext) $(bindir)/gnatlbr$(exeext); \ fi ; \ fi # --- 465,474 ---- # -if [ -f gnat1$(exeext) ] ; \ then \ if [ -f gnatlbr$(exeext) ] ; \ then \ ! $(RM) $(DESTDIR)$(bindir)/gnatlbr$(exeext); \ ! $(INSTALL_PROGRAM) gnatlbr$(exeext) $(DESTDIR)$(bindir)/gnatlbr$(exeext); \ fi ; \ fi # *************** ada.install-common: *** 495,502 **** # -if [ -f gnat1$(exeext) ] ; \ then \ ! $(RM) $(bindir)/gnatdll$(exeext); \ ! $(INSTALL_PROGRAM) gnatdll$(exeext) $(bindir)/gnatdll$(exeext); \ fi # # Finally, install the library --- 476,486 ---- # -if [ -f gnat1$(exeext) ] ; \ then \ ! if [ -f gnatdll$(exeext) ] ; \ ! then \ ! $(RM) $(DESTDIR)$(bindir)/gnatdll$(exeext); \ ! $(INSTALL_PROGRAM) gnatdll$(exeext) $(DESTDIR)$(bindir)/gnatdll$(exeext); \ ! fi ; \ fi # # Finally, install the library *************** ada.install-info: *** 513,558 **** ada.install-man: ada.uninstall: ! -$(RM) $(bindir)/gnatbind$(exeext) ! -$(RM) $(bindir)/gnatbl$(exeext) ! -$(RM) $(bindir)/gnatchop$(exeext) ! -$(RM) $(bindir)/gnatcmd$(exeext) ! -$(RM) $(bindir)/gnatdll$(exeext) ! -$(RM) $(bindir)/gnatkr$(exeext) ! -$(RM) $(bindir)/gnatlink$(exeext) ! -$(RM) $(bindir)/gnatls$(exeext) ! -$(RM) $(bindir)/gnatmake$(exeext) ! -$(RM) $(bindir)/gnatmem$(exeext) ! -$(RM) $(bindir)/gnatprep$(exeext) ! -$(RM) $(bindir)/gnatpsta$(exeext) ! -$(RM) $(bindir)/gnatpsys$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatbind$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatbl$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatchop$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatcmd$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatkr(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatlink$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatls$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatmake$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatmem$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatprep$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatpsta$(exeext) ! -$(RM) $(bindir)/$(target_alias)-gnatpsys$(exeext) ! -$(RM) $(tooldir)/bin/gnatbind$(exeext) ! -$(RM) $(tooldir)/bin/gnatbl$(exeext) ! -$(RM) $(tooldir)/bin/gnatchop$(exeext) ! -$(RM) $(tooldir)/bin/gnatcmd$(exeext) ! -$(RM) $(tooldir)/bin/gnatdll$(exeext) ! -$(RM) $(tooldir)/bin/gnatkr$(exeext) ! -$(RM) $(tooldir)/bin/gnatlink$(exeext) ! -$(RM) $(tooldir)/bin/gnatls$(exeext) ! -$(RM) $(tooldir)/bin/gnatmake$(exeext) ! -$(RM) $(tooldir)/bin/gnatmem$(exeext) ! -$(RM) $(tooldir)/bin/gnatprep$(exeext) ! -$(RM) $(tooldir)/bin/gnatpsta$(exeext) ! -$(RM) $(tooldir)/bin/gnatpsys$(exeext) ! # Gnatlbr and Gnatchop are only used on VMS ! -$(RM) $(bindir)/gnatlbr$(exeext) $(bindir)/gnatchop$(exeext) # Clean hooks: # A lot of the ancillary files are deleted by the main makefile. --- 497,550 ---- ada.install-man: ada.uninstall: ! -$(RM) $(DESTDIR)$(bindir)/gnatbind$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatbl$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatchop$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnat$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatdll$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatfind$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatkr$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatlbr$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatlink$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatls$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatmake$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatmem$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatprep$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatpsta$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatpsys$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/gnatxref$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatbind$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatbl$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatchop$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnat$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatdll$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatfind$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatkr(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatlbr$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatlink$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatls$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatmake$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatmem$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatprep$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatpsta$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatpsys$(exeext) ! -$(RM) $(DESTDIR)$(bindir)/$(target_alias)-gnatxref$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatbind$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatbl$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatchop$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnat$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatdll$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatfind$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatkr$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatlbr$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatlink$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatls$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatmake$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatmem$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatprep$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatpsta$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatpsys$(exeext) ! -$(RM) $(DESTDIR)$(tooldir)/bin/gnatxref$(exeext) # Clean hooks: # A lot of the ancillary files are deleted by the main makefile. diff -Nrc3pad gcc-3.2.1/gcc/ada/Makefile.in gcc-3.2.2/gcc/ada/Makefile.in *** gcc-3.2.1/gcc/ada/Makefile.in Thu May 2 17:32:36 2002 --- gcc-3.2.2/gcc/ada/Makefile.in Wed Jan 29 17:34:08 2003 *************** GNATBIND_OBJS = \ *** 338,349 **** s-stoele.o s-imgenu.o s-strops.o s-soflin.o s-wchcon.o s-wchjis.o \ sdefault.o switch.o stylesw.o validsw.o \ system.o table.o tree_io.o types.o widechar.o \ ! raise.o exit.o argv.o init.o final.o s-wchcnv.o s-exctab.o \ a-except.o s-memory.o s-traceb.o tracebak.o s-mastop.o s-except.o \ s-secsta.o $(EXTRA_GNATBIND_OBJS) GNATCHOP_RTL_OBJS = adaint.o argv.o cio.o cstreams.o exit.o \ ! final.o init.o raise.o sysdep.o ada.o a-comlin.o gnat.o a-string.o \ a-stmaco.o a-strsea.o a-charac.o a-chlat1.o g-except.o s-io.o \ a-chahan.o a-strunb.o a-strfix.o a-strmap.o g-casuti.o g-comlin.o hostparm.o \ g-dirope.o g-hesora.o g-htable.o g-regexp.o interfac.o system.o s-assert.o \ --- 338,349 ---- s-stoele.o s-imgenu.o s-strops.o s-soflin.o s-wchcon.o s-wchjis.o \ sdefault.o switch.o stylesw.o validsw.o \ system.o table.o tree_io.o types.o widechar.o \ ! raise.o exit.o argv.o init.o adafinal.o s-wchcnv.o s-exctab.o \ a-except.o s-memory.o s-traceb.o tracebak.o s-mastop.o s-except.o \ s-secsta.o $(EXTRA_GNATBIND_OBJS) GNATCHOP_RTL_OBJS = adaint.o argv.o cio.o cstreams.o exit.o \ ! adafinal.o init.o raise.o sysdep.o ada.o a-comlin.o gnat.o a-string.o \ a-stmaco.o a-strsea.o a-charac.o a-chlat1.o g-except.o s-io.o \ a-chahan.o a-strunb.o a-strfix.o a-strmap.o g-casuti.o g-comlin.o hostparm.o \ g-dirope.o g-hesora.o g-htable.o g-regexp.o interfac.o system.o s-assert.o \ *************** GNATCHOP_RTL_OBJS = adaint.o argv.o cio. *** 357,363 **** GNATCHOP_OBJS = gnatchop.o gnatvsn.o \ $(GNATCHOP_RTL_OBJS) $(EXTRA_GNATTOOLS_OBJS) ! GNATCMD_RTL_OBJS = adaint.o argv.o raise.o exit.o final.o init.o \ ada.o a-charac.o a-chahan.o a-comlin.o cstreams.o cio.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o \ a-finali.o a-filico.o a-ioexce.o a-stream.o \ --- 357,363 ---- GNATCHOP_OBJS = gnatchop.o gnatvsn.o \ $(GNATCHOP_RTL_OBJS) $(EXTRA_GNATTOOLS_OBJS) ! GNATCMD_RTL_OBJS = adaint.o argv.o raise.o exit.o adafinal.o init.o \ ada.o a-charac.o a-chahan.o a-comlin.o cstreams.o cio.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o \ a-finali.o a-filico.o a-ioexce.o a-stream.o \ *************** GNATKR_RTL_OBJS = ada.o a-charac.o a-cha *** 381,387 **** system.o s-bitops.o g-except.o s-finimp.o s-io.o s-parame.o s-secsta.o \ s-stopoo.o s-sopco3.o s-sopco4.o s-sopco5.o s-stache.o \ s-stoele.o s-soflin.o s-stalib.o s-unstyp.o adaint.o \ ! raise.o exit.o argv.o cio.o init.o final.o s-finroo.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o \ a-filico.o s-strops.o s-stratt.o s-imgenu.o a-ioexce.o s-exctab.o GNATKR_OBJS = gnatkr.o gnatvsn.o \ --- 381,387 ---- system.o s-bitops.o g-except.o s-finimp.o s-io.o s-parame.o s-secsta.o \ s-stopoo.o s-sopco3.o s-sopco4.o s-sopco5.o s-stache.o \ s-stoele.o s-soflin.o s-stalib.o s-unstyp.o adaint.o \ ! raise.o exit.o argv.o cio.o init.o adafinal.o s-finroo.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o \ a-filico.o s-strops.o s-stratt.o s-imgenu.o a-ioexce.o s-exctab.o GNATKR_OBJS = gnatkr.o gnatvsn.o \ *************** GNATKR_OBJS = gnatkr.o gnatvsn.o \ *** 389,395 **** GNATLINK_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o final.o raise.o tracebak.o \ ada.o a-comlin.o a-except.o \ gnat.o g-hesora.o g-htable.o g-os_lib.o \ interfac.o i-cstrea.o \ --- 389,395 ---- GNATLINK_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o adafinal.o raise.o tracebak.o \ ada.o a-comlin.o a-except.o \ gnat.o g-hesora.o g-htable.o g-os_lib.o \ interfac.o i-cstrea.o \ *************** GNATLS_RTL_OBJS = \ *** 416,422 **** a-except.o \ exit.o \ a-filico.o \ ! final.o \ a-finali.o \ init.o \ a-ioexce.o \ --- 416,422 ---- a-except.o \ exit.o \ a-filico.o \ ! adafinal.o \ a-finali.o \ init.o \ a-ioexce.o \ *************** GNATLS_OBJS = \ *** 541,547 **** widechar.o $(GNATLS_RTL_OBJS) $(EXTRA_GNATTOOLS_OBJS) GNATMAKE_RTL_OBJS = adaint.o argv.o raise.o exit.o a-comlin.o \ ! cio.o cstreams.o a-except.o s-mastop.o s-except.o final.o init.o \ a-finali.o a-filico.o s-finroo.o s-finimp.o s-ficobl.o\ a-charac.o a-chahan.o a-string.o a-strfix.o a-strmap.o a-strunb.o \ a-stmaco.o a-strsea.o a-textio.o s-bitops.o sysdep.o \ --- 541,547 ---- widechar.o $(GNATLS_RTL_OBJS) $(EXTRA_GNATTOOLS_OBJS) GNATMAKE_RTL_OBJS = adaint.o argv.o raise.o exit.o a-comlin.o \ ! cio.o cstreams.o a-except.o s-mastop.o s-except.o adafinal.o init.o \ a-finali.o a-filico.o s-finroo.o s-finimp.o s-ficobl.o\ a-charac.o a-chahan.o a-string.o a-strfix.o a-strmap.o a-strunb.o \ a-stmaco.o a-strsea.o a-textio.o s-bitops.o sysdep.o \ *************** argv.o \ *** 578,584 **** cio.o \ cstreams.o \ exit.o \ ! final.o \ init.o \ raise.o \ sysdep.o \ --- 578,584 ---- cio.o \ cstreams.o \ exit.o \ ! adafinal.o \ init.o \ raise.o \ sysdep.o \ *************** s-valuti.o *** 652,658 **** GNATMEM_OBJS = gnatmem.o memroot.o gmem.o \ $(GNATMEM_RTL_OBJS) $(EXTRA_GNATTOOLS_OBJS) ! GNATPREP_RTL_OBJS = adaint.o argv.o raise.o exit.o final.o init.o \ ada.o a-charac.o a-chahan.o a-comlin.o cstreams.o cio.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o \ a-finali.o a-filico.o a-ioexce.o a-stream.o a-string.o a-strmap.o \ --- 652,658 ---- GNATMEM_OBJS = gnatmem.o memroot.o gmem.o \ $(GNATMEM_RTL_OBJS) $(EXTRA_GNATTOOLS_OBJS) ! GNATPREP_RTL_OBJS = adaint.o argv.o raise.o exit.o adafinal.o init.o \ ada.o a-charac.o a-chahan.o a-comlin.o cstreams.o cio.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o \ a-finali.o a-filico.o a-ioexce.o a-stream.o a-string.o a-strmap.o \ *************** GNATPREP_OBJS = gnatprep.o gnatvsn.o \ *** 669,675 **** GNATPSTA_RTL_OBJS = adaint.o argv.o cstreams.o cio.o \ deftarg.o a-except.o targtyps.o tracebak.o s-memory.o s-traceb.o \ ! s-mastop.o s-except.o exit.o a-filico.o final.o a-finali.o init.o \ a-ioexce.o raise.o a-stream.o get_targ.o gnat.o g-hesora.o \ sysdep.o a-tags.o a-textio.o i-cstrea.o system.o s-assert.o \ s-exctab.o s-fatllf.o s-ficobl.o s-fileio.o s-finimp.o s-finroo.o \ --- 669,675 ---- GNATPSTA_RTL_OBJS = adaint.o argv.o cstreams.o cio.o \ deftarg.o a-except.o targtyps.o tracebak.o s-memory.o s-traceb.o \ ! s-mastop.o s-except.o exit.o a-filico.o adafinal.o a-finali.o init.o \ a-ioexce.o raise.o a-stream.o get_targ.o gnat.o g-hesora.o \ sysdep.o a-tags.o a-textio.o i-cstrea.o system.o s-assert.o \ s-exctab.o s-fatllf.o s-ficobl.o s-fileio.o s-finimp.o s-finroo.o \ *************** GNATPSTA_OBJS = gnatpsta.o types.o ttype *** 683,689 **** GNATPSYS_RTL_OBJS = adaint.o argv.o cstreams.o cio.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o exit.o \ ! a-filico.o final.o a-finali.o init.o a-ioexce.o \ raise.o a-stream.o \ sysdep.o a-tags.o a-textio.o i-cstrea.o system.o s-assert.o \ gnat.o g-hesora.o g-htable.o s-imgenu.o \ --- 683,689 ---- GNATPSYS_RTL_OBJS = adaint.o argv.o cstreams.o cio.o \ a-except.o tracebak.o s-memory.o s-traceb.o s-mastop.o s-except.o exit.o \ ! a-filico.o adafinal.o a-finali.o init.o a-ioexce.o \ raise.o a-stream.o \ sysdep.o a-tags.o a-textio.o i-cstrea.o system.o s-assert.o \ gnat.o g-hesora.o g-htable.o s-imgenu.o \ *************** GNATPSYS_OBJS = gnatpsys.o \ *** 697,703 **** GNATXREF_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o final.o raise.o sysdep.o tracebak.o \ ada.o a-charac.o a-chlat1.o gnat.o g-casuti.o g-hesora.o \ g-htable.o interfac.o system.o i-cstrea.o s-parame.o s-exctab.o \ a-ioexce.o a-string.o s-assert.o s-except.o \ --- 697,703 ---- GNATXREF_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o adafinal.o raise.o sysdep.o tracebak.o \ ada.o a-charac.o a-chlat1.o gnat.o g-casuti.o g-hesora.o \ g-htable.o interfac.o system.o i-cstrea.o s-parame.o s-exctab.o \ a-ioexce.o a-string.o s-assert.o s-except.o \ *************** GNATXREF_OBJS = gnatxref.o xr_tabls.o xr *** 719,725 **** GNATFIND_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o final.o raise.o sysdep.o tracebak.o \ ada.o a-chahan.o a-charac.o a-chlat1.o a-comlin.o a-except.o \ a-filico.o a-finali.o a-ioexce.o a-stmaco.o a-stream.o \ a-strfix.o a-string.o a-strmap.o a-strsea.o a-strunb.o \ --- 719,725 ---- GNATFIND_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o adafinal.o raise.o sysdep.o tracebak.o \ ada.o a-chahan.o a-charac.o a-chlat1.o a-comlin.o a-except.o \ a-filico.o a-finali.o a-ioexce.o a-stmaco.o a-stream.o \ a-strfix.o a-string.o a-strmap.o a-strsea.o a-strunb.o \ *************** GNATFIND_OBJS = gnatfind.o xr_tabls.o xr *** 742,748 **** GNATDLL_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o final.o raise.o sysdep.o tracebak.o \ a-charac.o a-chlat1.o a-chahan.o a-comlin.o a-except.o a-filico.o \ a-finali.o a-ioexce.o a-stream.o a-strfix.o a-string.o a-strmap.o \ a-strsea.o a-stmaco.o a-strunb.o a-tags.o a-textio.o ada.o \ --- 742,748 ---- GNATDLL_RTL_OBJS = \ adaint.o argv.o cio.o cstreams.o \ ! exit.o init.o adafinal.o raise.o sysdep.o tracebak.o \ a-charac.o a-chlat1.o a-chahan.o a-comlin.o a-except.o a-filico.o \ a-finali.o a-ioexce.o a-stream.o a-strfix.o a-string.o a-strmap.o \ a-strsea.o a-stmaco.o a-strunb.o a-tags.o a-textio.o ada.o \ *************** ifeq ($(strip $(filter-out lynxos,$(osys *** 1403,1409 **** endif endif ! ifeq ($(strip $(filter-out rtems,$(osys))),) LIBGNAT_TARGET_PAIRS = \ a-intnam.ads<4rintnam.ads \ s-inmaop.adb<7sinmaop.adb \ --- 1403,1409 ---- endif endif ! ifeq ($(strip $(filter-out rtems rtemself rtemsaout rtemscoff,$(osys))),) LIBGNAT_TARGET_PAIRS = \ a-intnam.ads<4rintnam.ads \ s-inmaop.adb<7sinmaop.adb \ *************** ifeq ($(strip $(filter-out rtems,$(osys) *** 1414,1420 **** s-parame.adb<5rparame.adb \ s-taprop.adb<7staprop.adb \ s-taspri.ads<7staspri.ads \ ! s-tpopsp.adb<5atpopsp.adb endif ifeq ($(strip $(filter-out go32 msdos,$(osys))),) --- 1414,1420 ---- s-parame.adb<5rparame.adb \ s-taprop.adb<7staprop.adb \ s-taspri.ads<7staspri.ads \ ! s-tpopsp.adb<5rtpopsp.adb endif ifeq ($(strip $(filter-out go32 msdos,$(osys))),) *************** endif *** 1510,1519 **** LIBGNAT_SRCS = ada.h adaint.c adaint.h argv.c cio.c cstreams.c \ errno.c exit.c cal.c \ raise.h raise.c sysdep.c types.h io-aux.c init.c \ ! final.c tracebak.c expect.c $(EXTRA_LIBGNAT_SRCS) LIBGNAT_OBJS = adaint.o argv.o cio.o cstreams.o errno.o exit.o \ ! raise.o sysdep.o io-aux.o init.o cal.o final.o \ tracebak.o expect.o ../../prefix.o $(EXTRA_LIBGNAT_OBJS) # NOTE ??? - when the -I option for compiling Ada code is made to work, --- 1510,1519 ---- LIBGNAT_SRCS = ada.h adaint.c adaint.h argv.c cio.c cstreams.c \ errno.c exit.c cal.c \ raise.h raise.c sysdep.c types.h io-aux.c init.c \ ! adafinal.c tracebak.c expect.c $(EXTRA_LIBGNAT_SRCS) LIBGNAT_OBJS = adaint.o argv.o cio.o cstreams.o errno.o exit.o \ ! raise.o sysdep.o io-aux.o init.o cal.o adafinal.o \ tracebak.o expect.o ../../prefix.o $(EXTRA_LIBGNAT_OBJS) # NOTE ??? - when the -I option for compiling Ada code is made to work, *************** install-gnatlib: stamp-gnatlib *** 2098,2135 **** # Create the directory before deleting it, in case the directory is # a list of directories (as it may be on VMS). This ensures we are # deleting the right one. ! -$(MKDIR) $(ADA_RTL_OBJ_DIR) ! -$(MKDIR) $(ADA_INCLUDE_DIR) ! $(RMDIR) $(ADA_RTL_OBJ_DIR) ! $(RMDIR) $(ADA_INCLUDE_DIR) ! -$(MKDIR) $(ADA_RTL_OBJ_DIR) ! -$(MKDIR) $(ADA_INCLUDE_DIR) ! -$(INSTALL_DATA) ada/rts/Makefile.adalib $(ADA_RTL_OBJ_DIR) for file in ada/rts/*.ali; do \ ! $(INSTALL_DATA) $$file $(ADA_RTL_OBJ_DIR); \ done -for file in ada/rts/*$(arext);do \ ! $(INSTALL_DATA) $$file $(ADA_RTL_OBJ_DIR); \ done ifeq ($(strip $(filter-out alpha% dec vms%,$(targ))),) -for file in ada/rts/lib*$(soext);do \ ! $(INSTALL_DATA) $$file $(ADA_RTL_OBJ_DIR); \ done else -for file in ada/rts/lib*-**$(soext);do \ ! $(INSTALL_DATA) $$file $(ADA_RTL_OBJ_DIR); \ done endif ! -$(LN) $(ADA_RTL_OBJ_DIR)/libgnat-*$(soext) \ ! $(ADA_RTL_OBJ_DIR)/libgnat$(soext) ! -$(LN) $(ADA_RTL_OBJ_DIR)/libgnarl-*$(soext) \ ! $(ADA_RTL_OBJ_DIR)/libgnarl$(soext) # This copy must be done preserving the date on the original file. for file in ada/rts/*.adb ada/rts/*.ads; do \ ! $(INSTALL_DATA_DATE) $$file $(ADA_INCLUDE_DIR); \ done ! cd $(ADA_INCLUDE_DIR); $(CHMOD) a-wx *.adb ! cd $(ADA_INCLUDE_DIR); $(CHMOD) a-wx *.ads ../stamp-gnatlib2: $(RM) rts/s-*.ali --- 2098,2135 ---- # Create the directory before deleting it, in case the directory is # a list of directories (as it may be on VMS). This ensures we are # deleting the right one. ! -$(MKDIR) $(DESTDIR)$(ADA_RTL_OBJ_DIR) ! -$(MKDIR) $(DESTDIR)$(ADA_INCLUDE_DIR) ! $(RMDIR) $(DESTDIR)$(ADA_RTL_OBJ_DIR) ! $(RMDIR) $(DESTDIR)$(ADA_INCLUDE_DIR) ! -$(MKDIR) $(DESTDIR)$(ADA_RTL_OBJ_DIR) ! -$(MKDIR) $(DESTDIR)$(ADA_INCLUDE_DIR) ! -$(INSTALL_DATA) ada/rts/Makefile.adalib $(DESTDIR)$(ADA_RTL_OBJ_DIR) for file in ada/rts/*.ali; do \ ! $(INSTALL_DATA) $$file $(DESTDIR)$(ADA_RTL_OBJ_DIR); \ done -for file in ada/rts/*$(arext);do \ ! $(INSTALL_DATA) $$file $(DESTDIR)$(ADA_RTL_OBJ_DIR); \ done ifeq ($(strip $(filter-out alpha% dec vms%,$(targ))),) -for file in ada/rts/lib*$(soext);do \ ! $(INSTALL_DATA) $$file $(DESTDIR)$(ADA_RTL_OBJ_DIR); \ done else -for file in ada/rts/lib*-**$(soext);do \ ! $(INSTALL_DATA) $$file $(DESTDIR)$(ADA_RTL_OBJ_DIR); \ done endif ! -( cd $(DESTDIR)$(ADA_RTL_OBJ_DIR) && \ ! $(LN) libgnat-*$(soext) libgnat$(soext) ) ! -( cd $(DESTDIR)$(ADA_RTL_OBJ_DIR) && \ ! $(LN) libgnarl-*$(soext) libgnarl$(soext) ) # This copy must be done preserving the date on the original file. for file in ada/rts/*.adb ada/rts/*.ads; do \ ! $(INSTALL_DATA_DATE) $$file $(DESTDIR)$(ADA_INCLUDE_DIR); \ done ! cd $(DESTDIR)$(ADA_INCLUDE_DIR); $(CHMOD) a-wx *.adb ! cd $(DESTDIR)$(ADA_INCLUDE_DIR); $(CHMOD) a-wx *.ads ../stamp-gnatlib2: $(RM) rts/s-*.ali *************** gnatlib: ../stamp-gnatlib1 ../stamp-gnat *** 2181,2187 **** # ../xgcc -B../ -dD -E ../tconfig.h $(INCLUDES) > rts/tconfig.h $(MAKE) -C rts CC="../../xgcc -B../../" \ INCLUDES="$(INCLUDES_FOR_SUBDIR) -I./../.." \ ! CFLAGS="$(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS) -DIN_RTS" \ ADA_CFLAGS="$(GNATLIBCFLAGS)" \ srcdir=$(fsrcdir) \ -f ../Makefile $(LIBGNAT_OBJS) --- 2181,2187 ---- # ../xgcc -B../ -dD -E ../tconfig.h $(INCLUDES) > rts/tconfig.h $(MAKE) -C rts CC="../../xgcc -B../../" \ INCLUDES="$(INCLUDES_FOR_SUBDIR) -I./../.." \ ! CFLAGS="$(GNATLIBCFLAGS) $(LIBGCC2_CFLAGS) -DIN_RTS" \ ADA_CFLAGS="$(GNATLIBCFLAGS)" \ srcdir=$(fsrcdir) \ -f ../Makefile $(LIBGNAT_OBJS) *************** ravenppclib: *** 2279,2292 **** gnatlib-shared-default: $(MAKE) $(FLAGS_TO_PASS) \ GNATLIBFLAGS="$(GNATLIBFLAGS)" \ ! GNATLIBCFLAGS="$(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS)" \ THREAD_KIND="$(THREAD_KIND)" \ gnatlib $(RM) rts/libgnat$(soext) rts/libgnarl$(soext) ! cd rts; ../../xgcc -B../../ -shared $(TARGET_LIBGCC2_CFLAGS) \ -o libgnat-$(LIBRARY_VERSION)$(soext) $(SO_OPTS)libgnat-$(LIBRARY_VERSION)$(soext) \ $(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS) $(MISCLIB) -lm ! cd rts; ../../xgcc -B../../ -shared $(TARGET_LIBGCC2_CFLAGS) \ -o libgnarl-$(LIBRARY_VERSION)$(soext) $(SO_OPTS)libgnarl-$(LIBRARY_VERSION)$(soext) \ $(GNATRTL_TASKING_OBJS) $(THREADSLIB) cd rts; $(LN) libgnat-$(LIBRARY_VERSION)$(soext) libgnat$(soext) --- 2279,2292 ---- gnatlib-shared-default: $(MAKE) $(FLAGS_TO_PASS) \ GNATLIBFLAGS="$(GNATLIBFLAGS)" \ ! GNATLIBCFLAGS="$(GNATLIBCFLAGS) $(LIBGCC2_CFLAGS)" \ THREAD_KIND="$(THREAD_KIND)" \ gnatlib $(RM) rts/libgnat$(soext) rts/libgnarl$(soext) ! cd rts; ../../xgcc -B../../ -shared $(LIBGCC2_CFLAGS) \ -o libgnat-$(LIBRARY_VERSION)$(soext) $(SO_OPTS)libgnat-$(LIBRARY_VERSION)$(soext) \ $(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS) $(MISCLIB) -lm ! cd rts; ../../xgcc -B../../ -shared $(LIBGCC2_CFLAGS) \ -o libgnarl-$(LIBRARY_VERSION)$(soext) $(SO_OPTS)libgnarl-$(LIBRARY_VERSION)$(soext) \ $(GNATRTL_TASKING_OBJS) $(THREADSLIB) cd rts; $(LN) libgnat-$(LIBRARY_VERSION)$(soext) libgnat$(soext) *************** cio.o : cio.c *** 2589,2595 **** deftarg.o : deftarg.c errno.o : errno.c exit.o : raise.h exit.c ! final.o : raise.h final.c gmem.o : gmem.c raise.o : raise.c raise.h --- 2589,2595 ---- deftarg.o : deftarg.c errno.o : errno.c exit.o : raise.h exit.c ! adafinal.o : raise.h adafinal.c gmem.o : gmem.c raise.o : raise.c raise.h *************** force: *** 4339,4345 **** # Gnatlbr is only used on VMS ! GNATLBR_RTL_C_OBJS = adaint.o argv.o cio.o cstreams.o exit.o final.o init.o \ raise.o sysdep.o tracebak.o GNATLBR_C_OBJS = $(GNATLBR_RTL_C_OBJS) --- 4339,4345 ---- # Gnatlbr is only used on VMS ! GNATLBR_RTL_C_OBJS = adaint.o argv.o cio.o cstreams.o exit.o adafinal.o init.o \ raise.o sysdep.o tracebak.o GNATLBR_C_OBJS = $(GNATLBR_RTL_C_OBJS) diff -Nrc3pad gcc-3.2.1/gcc/ada/adafinal.c gcc-3.2.2/gcc/ada/adafinal.c *** gcc-3.2.1/gcc/ada/adafinal.c Thu Jan 1 00:00:00 1970 --- gcc-3.2.2/gcc/ada/adafinal.c Tue Jan 28 22:28:24 2003 *************** *** 0 **** --- 1,57 ---- + /**************************************************************************** + * * + * GNAT COMPILER COMPONENTS * + * * + * A D A F I N A L * + * * + * $Revision: 1.1.2.1 $ + * * + * C Implementation File * + * * + * Copyright (C) 1992-2001 Free Software Foundation, Inc. * + * * + * GNAT is free software; you can redistribute it and/or modify it under * + * terms of the GNU General Public License as published by the Free Soft- * + * ware Foundation; either version 2, or (at your option) any later ver- * + * sion. GNAT is distributed in the hope that it will be useful, but WITH- * + * OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * + * for more details. You should have received a copy of the GNU General * + * Public License distributed with GNAT; see file COPYING. If not, write * + * to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, * + * MA 02111-1307, USA. * + * * + * As a special exception, if you link this file with other files to * + * produce an executable, this file does not by itself cause the resulting * + * executable to be covered by the GNU General Public License. This except- * + * ion does not however invalidate any other reasons why the executable * + * file might be covered by the GNU Public License. * + * * + * GNAT was originally developed by the GNAT team at New York University. * + * Extensive contributions were provided by Ada Core Technologies Inc. * + * * + ****************************************************************************/ + + #ifdef __alpha_vxworks + #include "vxWorks.h" + #endif + + #ifdef IN_RTS + #include "tconfig.h" + #include "tsystem.h" + #else + #include "config.h" + #include "system.h" + #endif + + #include "raise.h" + + /* This routine is called at the extreme end of execution of an Ada program + (the call is generated by the binder). The standard routine does nothing + at all, the intention is that this be replaced by system specific code + where finalization is required. */ + + void + __gnat_finalize () + { + } diff -Nrc3pad gcc-3.2.1/gcc/ada/adaint.h gcc-3.2.2/gcc/ada/adaint.h *** gcc-3.2.1/gcc/ada/adaint.h Sat May 4 03:27:31 2002 --- gcc-3.2.2/gcc/ada/adaint.h Wed Jan 29 17:34:09 2003 *************** *** 4,10 **** * * * A D A I N T * * * ! * $Revision: 1.5.2.1 $ * * * C Header File * * * --- 4,10 ---- * * * A D A I N T * * * ! * $Revision: 1.5.2.1.4.1 $ * * * C Header File * * * *************** *** 32,37 **** --- 32,41 ---- * * ****************************************************************************/ + #if defined(__rtems__) + #include + #endif + #include extern void __gnat_to_gm_time PARAMS ((int *, int *, diff -Nrc3pad gcc-3.2.1/gcc/ada/final.c gcc-3.2.2/gcc/ada/final.c *** gcc-3.2.1/gcc/ada/final.c Sat May 4 03:28:03 2002 --- gcc-3.2.2/gcc/ada/final.c Thu Jan 1 00:00:00 1970 *************** *** 1,57 **** - /**************************************************************************** - * * - * GNAT COMPILER COMPONENTS * - * * - * F I N A L * - * * - * $Revision: 1.1.16.1 $ - * * - * C Implementation File * - * * - * Copyright (C) 1992-2001 Free Software Foundation, Inc. * - * * - * GNAT is free software; you can redistribute it and/or modify it under * - * terms of the GNU General Public License as published by the Free Soft- * - * ware Foundation; either version 2, or (at your option) any later ver- * - * sion. GNAT is distributed in the hope that it will be useful, but WITH- * - * OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * - * for more details. You should have received a copy of the GNU General * - * Public License distributed with GNAT; see file COPYING. If not, write * - * to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, * - * MA 02111-1307, USA. * - * * - * As a special exception, if you link this file with other files to * - * produce an executable, this file does not by itself cause the resulting * - * executable to be covered by the GNU General Public License. This except- * - * ion does not however invalidate any other reasons why the executable * - * file might be covered by the GNU Public License. * - * * - * GNAT was originally developed by the GNAT team at New York University. * - * Extensive contributions were provided by Ada Core Technologies Inc. * - * * - ****************************************************************************/ - - #ifdef __alpha_vxworks - #include "vxWorks.h" - #endif - - #ifdef IN_RTS - #include "tconfig.h" - #include "tsystem.h" - #else - #include "config.h" - #include "system.h" - #endif - - #include "raise.h" - - /* This routine is called at the extreme end of execution of an Ada program - (the call is generated by the binder). The standard routine does nothing - at all, the intention is that this be replaced by system specific code - where finalization is required. */ - - void - __gnat_finalize () - { - } --- 0 ---- diff -Nrc3pad gcc-3.2.1/gcc/ada/gnatvsn.ads gcc-3.2.2/gcc/ada/gnatvsn.ads *** gcc-3.2.1/gcc/ada/gnatvsn.ads Tue Nov 19 08:16:36 2002 --- gcc-3.2.2/gcc/ada/gnatvsn.ads Wed Feb 5 03:02:29 2003 *************** *** 6,12 **** -- -- -- S p e c -- -- -- ! -- $Revision: 1.2.12.65.2.119 $ -- -- -- Copyright (C) 1992-2002 Free Software Foundation, Inc. -- -- -- --- 6,12 ---- -- -- -- S p e c -- -- -- ! -- $Revision: 1.2.12.65.2.198 $ -- -- -- Copyright (C) 1992-2002 Free Software Foundation, Inc. -- -- -- *************** *** 38,44 **** package Gnatvsn is ! Gnat_Version_String : constant String := "3.2.1 20021119 (release)"; -- Version output when GNAT (compiler), or its related tools, including -- GNATBIND, GNATCHOP, GNATFIND, GNATLINK, GNATMAKE, GNATXREF, are run -- (with appropriate verbose option switch set). --- 38,44 ---- package Gnatvsn is ! Gnat_Version_String : constant String := "3.2.2 20030205 (release)"; -- Version output when GNAT (compiler), or its related tools, including -- GNATBIND, GNATCHOP, GNATFIND, GNATLINK, GNATMAKE, GNATXREF, are run -- (with appropriate verbose option switch set). diff -Nrc3pad gcc-3.2.1/gcc/ada/init.c gcc-3.2.2/gcc/ada/init.c *** gcc-3.2.1/gcc/ada/init.c Sat May 4 03:28:15 2002 --- gcc-3.2.2/gcc/ada/init.c Wed Jan 29 17:34:09 2003 *************** *** 4,10 **** * * * I N I T * * * ! * $Revision: 1.8.10.1 $ * * * C Implementation File * * * --- 4,10 ---- * * * I N I T * * * ! * $Revision: 1.8.10.1.4.1 $ * * * C Implementation File * * * *************** __gnat_initialize () *** 1640,1645 **** --- 1640,1661 ---- #endif } + /***************************************/ + /* __gnat_initialize (RTEMS version) */ + /***************************************/ + + #elif defined(__rtems__) + + extern void __gnat_install_handler (); + + /* For RTEMS, each bsp will provide a custom __gnat_install_handler (). */ + + void + __gnat_initialize () + { + __gnat_install_handler (); + } + #else /* For all other versions of GNAT, the initialize routine and handler