Update to ncurses-6.0

Change-Id: I98ab2ea8a5e13cca9f8b7cf6277b9b14a4da4299
diff --git a/Ada95/src/Makefile.in b/Ada95/src/Makefile.in
index 1c072bf..b0e80de 100644
--- a/Ada95/src/Makefile.in
+++ b/Ada95/src/Makefile.in
@@ -1,5 +1,5 @@
 ##############################################################################
-# Copyright (c) 1998-2003,2004 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2014,2015 Free Software Foundation, Inc.                #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
 # copy of this software and associated documentation files (the "Software"), #
@@ -28,32 +28,41 @@
 #
 #  Author:  Juergen Pfeifer, 1996
 #
-#  $Id: Makefile.in,v 1.31 2007/09/15 18:22:24 tom Exp $
+#  $Id: Makefile.in,v 1.71 2015/08/05 23:15:41 tom Exp $
 #
 .SUFFIXES:
 
-SHELL		= /bin/sh
+SHELL		= @SHELL@
+VPATH		= @srcdir@
 THIS		= Makefile
 
 MODEL		= ../../@DFT_OBJ_SUBDIR@
+
 DESTDIR		= @DESTDIR@
+
+top_srcdir	= @top_srcdir@
 srcdir		= @srcdir@
 prefix		= @prefix@
 exec_prefix	= @exec_prefix@
-ADA_INCLUDE	= @ADA_INCLUDE@
+includedir	= @includedir@
+libdir		= @libdir@
+
+LIBDIR		= $(DESTDIR)$(libdir)
+ADA_INCLUDE	= $(DESTDIR)@ADA_INCLUDE@
+ADA_OBJECTS	= $(DESTDIR)@ADA_OBJECTS@
 
 INSTALL		= @INSTALL@
-INSTALL_DATA	= @INSTALL_DATA@
+INSTALL_LIB	= @INSTALL@ @INSTALL_LIB@
 
 AR		= @AR@
-AR_OPTS		= @AR_OPTS@
+ARFLAGS		= @ARFLAGS@
 AWK		= @AWK@
 LN_S		= @LN_S@
 
 CC		= @CC@
 CFLAGS		= @CFLAGS@
 
-CPPFLAGS	= @ACPPFLAGS@ \
+CPPFLAGS	= @ACPPFLAGS@ @CPPFLAGS@ \
 		  -DHAVE_CONFIG_H -I$(srcdir)
 
 CCFLAGS		= $(CPPFLAGS) $(CFLAGS)
@@ -69,60 +78,58 @@
 LDFLAGS		= @LDFLAGS@ @LD_MODEL@ @LIBS@
 
 RANLIB		= @RANLIB@
+
 ################################################################################
 ADA             = @cf_ada_compiler@
 ADAPREP		= gnatprep
 ADAFLAGS        = @ADAFLAGS@ -I. -I$(srcdir)
 
+LIB_NAME	= AdaCurses
+SONAME		= @ADA_SHAREDLIB@
+
+GNAT_PROJECT	= $(srcdir)/library.gpr
+
+# build/source are the Ada95 tree
+BUILD_DIR	= ..
+SOURCE_DIR	= ..
+
+BUILD_DIR_LIB	= $(BUILD_DIR)/lib
+SOURCE_DIR_SRC	= $(SOURCE_DIR)/src
+
 ADAMAKE         = @cf_ada_make@
-ADAMAKEFLAGS    = 
+ADAMAKEFLAGS    = \
+	-P$(GNAT_PROJECT) \
+	-XBUILD_DIR=`cd $(BUILD_DIR);pwd` \
+	-XSOURCE_DIR=`cd $(SOURCE_DIR);pwd` \
+	-XSOURCE_DIR2=`cd $(srcdir);pwd` \
+	-XLIB_NAME=$(LIB_NAME) \
+	-XSONAME=$(SONAME)
 
 CARGS           = -cargs $(ADAFLAGS)
 LARGS           =
 
+STATIC_LIBNAME	= lib$(LIB_NAME).a
+SHARED_LIBNAME	= $(SONAME)
+SHARED_SYMLINK	= lib$(LIB_NAME).so
+
 ALIB            = @cf_ada_package@
 ABASE           = $(ALIB)-curses
-
-LIBALIS=$(ALIB).ali              			\
-	$(ABASE)-aux.ali         			\
-	$(ABASE).ali             		        \
-	$(ABASE)-terminfo.ali				\
-	$(ABASE)-termcap.ali				\
-	$(ABASE)-putwin.ali				\
-	$(ABASE)-trace.ali				\
-	$(ABASE)-mouse.ali       			\
-	$(ABASE)-panels.ali      			\
-	$(ABASE)-menus.ali       			\
-	$(ABASE)-forms.ali       			\
-	$(ABASE)-forms-field_types.ali	        	\
-	$(ABASE)-forms-field_types-alpha.ali      	\
-	$(ABASE)-forms-field_types-alphanumeric.ali     \
-	$(ABASE)-forms-field_types-intfield.ali      	\
-	$(ABASE)-forms-field_types-numeric.ali      	\
-	$(ABASE)-forms-field_types-regexp.ali      	\
-	$(ABASE)-forms-field_types-enumeration.ali      \
-	$(ABASE)-forms-field_types-ipv4_address.ali     \
-	$(ABASE)-forms-field_types-user.ali	      	\
-	$(ABASE)-forms-field_types-user-choice.ali     	\
-	$(ABASE)-text_io.ali     			\
-	$(ABASE)-text_io-aux.ali
-
-# Ada Library files for generic packages. Since gnat 3.10 they are
-# also compiled
-GENALIS=$(ABASE)-menus-menu_user_data.ali		\
-	$(ABASE)-menus-item_user_data.ali		\
-	$(ABASE)-forms-form_user_data.ali		\
-	$(ABASE)-forms-field_user_data.ali		\
-	$(ABASE)-forms-field_types-enumeration-ada.ali	\
-	$(ABASE)-panels-user_data.ali			\
-	$(ABASE)-text_io-integer_io.ali			\
-	$(ABASE)-text_io-float_io.ali			\
-	$(ABASE)-text_io-fixed_io.ali			\
-	$(ABASE)-text_io-decimal_io.ali			\
-	$(ABASE)-text_io-enumeration_io.ali		\
-	$(ABASE)-text_io-modular_io.ali			\
-	$(ABASE)-text_io-complex_io.ali
-
+################################################################################
+GENERATED_SOURCES=$(ABASE).ads         			\
+		  $(ABASE).adb         			\
+	          $(ABASE)-aux.ads   			\
+	          $(ABASE)-trace.ads   			\
+	          $(ABASE)-menus.ads   			\
+	          $(ABASE)-forms.ads   			\
+	          $(ABASE)-mouse.ads 			\
+	          $(ABASE)-panels.ads			\
+	          $(ABASE)-menus-menu_user_data.ads	\
+	          $(ABASE)-menus-item_user_data.ads	\
+	          $(ABASE)-forms-form_user_data.ads	\
+	          $(ABASE)-forms-field_types.ads	\
+	          $(ABASE)-forms-field_user_data.ads	\
+	          $(ABASE)-panels-user_data.ads
+################################################################################
 LIBOBJS=$(ALIB).o                			\
 	$(ABASE)-aux.o           			\
 	$(ABASE).o               			\
@@ -163,34 +170,41 @@
 	$(ABASE)-text_io-modular_io.o			\
 	$(ABASE)-text_io-complex_io.o
 
-
-all ::  libAdaCurses.a
+all ::  $(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
 	@echo done
 
-libAdaCurses.a :: dotouch $(LIBOBJS) @cf_generic_objects@
-	$(AR) $(AR_OPTS) $@ $(LIBOBJS) @cf_generic_objects@
-
-dotouch :
-	@sh -c 'for f in $(LIBALIS) $(GENALIS); do test -f $$f || touch $$f; done'
+$(ADA_INCLUDE) \
+$(ADA_OBJECTS) \
+$(LIBDIR) \
+$(BUILD_DIR_LIB) :
+	mkdir -p $@
 
 sources :
 	@echo made $@
 
 libs \
 install \
-install.libs \
+install.libs :: \
+		$(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
+	@echo made $(STATIC_LIBNAME)
+
+install \
+install.libs :: \
+		$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) \
+		$(ADA_OBJECTS)
+	@$(INSTALL_LIB) \
+		$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) \
+		$(ADA_OBJECTS)
+
 uninstall \
 uninstall.libs ::
-	@echo made $@
-
-generics: $(GENALIS)
-	@echo made $@
+	@rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
 
 mostlyclean ::
 	rm -f *.o *.ali b_t*.* *.s $(PROGS) a.out core b_*_test.c *.xr[bs] *.a
 
 clean :: mostlyclean
-	rm -f $(LIBALIS) $(GENALIS) $(LIBOBJS) $(GENOBJS) $(ABASE)-trace.adb
+	rm -f $(ABASE)-trace.adb
 
 distclean :: clean
 	rm -f Makefile
@@ -199,190 +213,127 @@
 
 BASEDEPS=$(ABASE).ads $(ABASE)-aux.ads $(ABASE).adb
 
-$(ALIB).o: $(srcdir)/$(ALIB).ads
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ALIB).ads
-
-
-$(ABASE)-aux.o: $(srcdir)/$(ABASE)-aux.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-aux.adb
-
-
-$(ABASE).o: $(ABASE).adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(ABASE).adb
-
-
-$(ABASE)-terminfo.o: \
-		$(srcdir)/$(ABASE)-terminfo.ads \
-		$(srcdir)/$(ABASE)-terminfo.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-terminfo.adb
-
-
-$(ABASE)-termcap.o: \
-		$(srcdir)/$(ABASE)-termcap.ads \
-		$(srcdir)/$(ABASE)-termcap.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-termcap.adb
-
-
-$(ABASE)-putwin.o: \
-		$(srcdir)/$(ABASE)-putwin.ads \
-		$(srcdir)/$(ABASE)-putwin.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-putwin.adb
-
-
 $(ABASE)-trace.adb : $(srcdir)/$(ABASE)-trace.adb_p
 	rm -f $@
-	$(ADAPREP) -DADA_TRACE=@ADA_TRACE@ -DPRAGMA_UNREF=@PRAGMA_UNREF@ $(srcdir)/$(ABASE)-trace.adb_p $@
+	$(ADAPREP) -DADA_TRACE=@ADA_TRACE@ @GNATPREP_OPTS@ $(srcdir)/$(ABASE)-trace.adb_p $@
 
-$(ABASE)-trace.o: \
-		$(ABASE)-trace.ads \
-		$(ABASE)-trace.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(ABASE)-trace.adb
+###############################################################################
+# Use these definitions when building a shared library.
+SHARED_C_OBJS	= c_varargs_to_ada.o c_threaded_variables.o ncurses_compat.o
+SHARED_OBJS 	= $(SHARED_C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
 
+c_varargs_to_ada.o :	$(srcdir)/c_varargs_to_ada.c
+	$(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/c_varargs_to_ada.c
 
-$(ABASE)-mouse.o: \
-		$(ABASE)-mouse.ads \
-		$(srcdir)/$(ABASE)-mouse.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-mouse.adb
+c_threaded_variables.o : $(srcdir)/c_threaded_variables.c
+	$(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/c_threaded_variables.c
 
+ncurses_compat.o :	$(srcdir)/ncurses_compat.c
+	$(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/ncurses_compat.c
 
-$(ABASE)-panels.o: \
-		$(ABASE)-panels.ads \
-		$(srcdir)/$(ABASE)-panels.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-panels.adb
+###############################################################################
+# Use these definitions when building a static library.
+STATIC_C_OBJS	= static_c_varargs_to_ada.o static_c_threaded_variables.o static_ncurses_compat.o
+STATIC_OBJS 	= $(STATIC_C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
 
+static_c_varargs_to_ada.o :	$(srcdir)/c_varargs_to_ada.c
+	$(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/c_varargs_to_ada.c
 
-$(ABASE)-menus.o: \
-		$(ABASE)-menus.ads \
-		$(srcdir)/$(ABASE)-menus.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-menus.adb
+static_c_threaded_variables.o : $(srcdir)/c_threaded_variables.c
+	$(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/c_threaded_variables.c
 
+static_ncurses_compat.o :	$(srcdir)/ncurses_compat.c
+	$(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/ncurses_compat.c
 
-$(ABASE)-forms.o: \
-		$(ABASE)-forms.ads \
-		$(srcdir)/$(ABASE)-forms.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms.adb
+###############################################################################
 
-$(ABASE)-forms-field_types.o: \
-		$(ABASE)-forms-field_types.ads \
-		$(srcdir)/$(ABASE)-forms-field_types.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types.adb
+@USE_OLD_MAKERULES@$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) :: \
+@USE_OLD_MAKERULES@		$(BUILD_DIR_LIB) \
+@USE_OLD_MAKERULES@		$(STATIC_OBJS)
+@USE_OLD_MAKERULES@	$(AR) $(ARFLAGS) $@ $(STATIC_OBJS)
 
-$(ABASE)-forms-field_types-alpha.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-alpha.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-alpha.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-alpha.adb
+$(BUILD_DIR)/static-ali : ; mkdir -p $@
+$(BUILD_DIR)/static-obj : ; mkdir -p $@
 
-$(ABASE)-forms-field_types-alphanumeric.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-alphanumeric.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-alphanumeric.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-alphanumeric.adb
+STATIC_DIRS = \
+	$(BUILD_DIR_LIB) \
+	$(BUILD_DIR)/static-ali \
+	$(BUILD_DIR)/static-obj
 
-$(ABASE)-forms-field_types-intfield.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-intfield.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-intfield.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-intfield.adb
+@USE_GNAT_PROJECTS@$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) :: \
+@USE_GNAT_PROJECTS@		$(ABASE)-trace.adb \
+@USE_GNAT_PROJECTS@		$(STATIC_C_OBJS) \
+@USE_GNAT_PROJECTS@		$(STATIC_DIRS)
+@USE_GNAT_PROJECTS@	$(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
+@USE_GNAT_PROJECTS@	$(AR) $(ARFLAGS) $@ $(STATIC_C_OBJS)
+@USE_GNAT_PROJECTS@
+@USE_GNAT_LIBRARIES@install \
+@USE_GNAT_LIBRARIES@install.libs :: \
+@USE_GNAT_LIBRARIES@		$(ADA_OBJECTS)
+@USE_GNAT_LIBRARIES@	$(INSTALL_LIB) \
+@USE_GNAT_LIBRARIES@		$(BUILD_DIR)/static-ali/*.ali \
+@USE_GNAT_LIBRARIES@		$(ADA_OBJECTS)
 
-$(ABASE)-forms-field_types-numeric.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-numeric.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-numeric.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-numeric.adb
+uninstall \
+uninstall.libs ::
+	@rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
 
-$(ABASE)-forms-field_types-regexp.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-regexp.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-regexp.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-regexp.adb
+@USE_GNAT_LIBRARIES@uninstall \
+@USE_GNAT_LIBRARIES@uninstall.libs ::
+@USE_GNAT_LIBRARIES@	@$(SHELL) -c 'for name in $(BUILD_DIR)/static-ali/*.ali ; do rm -f $(ADA_OBJECTS)/`basename $$name`; done'
 
-$(ABASE)-forms-field_types-enumeration.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-enumeration.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-enumeration.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-enumeration.adb
+$(BUILD_DIR)/dynamic-ali : ; mkdir -p $@
+$(BUILD_DIR)/dynamic-obj : ; mkdir -p $@
 
-$(ABASE)-forms-field_types-ipv4_address.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-ipv4_address.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-ipv4_address.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-ipv4_address.adb
+SHARED_DIRS = \
+	$(BUILD_DIR_LIB) \
+	$(BUILD_DIR)/dynamic-ali \
+	$(BUILD_DIR)/dynamic-obj
 
-$(ABASE)-forms-field_types-user.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-user.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-user.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-user.adb
+@MAKE_ADA_SHAREDLIB@all :: $(BUILD_DIR_LIB)/$(SHARED_LIBNAME)
+@MAKE_ADA_SHAREDLIB@$(BUILD_DIR_LIB)/$(SHARED_LIBNAME) :: \
+@MAKE_ADA_SHAREDLIB@		$(ABASE)-trace.adb \
+@MAKE_ADA_SHAREDLIB@		$(SHARED_DIRS) \
+@MAKE_ADA_SHAREDLIB@		$(SHARED_OBJS)
+@MAKE_ADA_SHAREDLIB@	cp $(SHARED_OBJS) $(BUILD_DIR)/dynamic-obj/
+@MAKE_ADA_SHAREDLIB@	$(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=dynamic
 
-$(ABASE)-forms-field_types-user-choice.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-user-choice.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-user-choice.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-user-choice.adb
+install \
+install.libs :: $(ADA_INCLUDE)
+	$(INSTALL_LIB) \
+		$(SOURCE_DIR_SRC)/*.ad[sb] \
+		$(ADA_INCLUDE)
 
-$(ABASE)-text_io.o: \
-		$(srcdir)/$(ABASE)-text_io.ads \
-		$(srcdir)/$(ABASE)-text_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io.adb
+install \
+install.libs :: $(ADA_INCLUDE)
+	$(INSTALL_LIB) \
+		$(GENERATED_SOURCES) \
+		$(ADA_INCLUDE)
 
-$(ABASE)-text_io-aux.o: \
-		$(srcdir)/$(ABASE)-text_io-aux.ads \
-		$(srcdir)/$(ABASE)-text_io-aux.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-aux.adb
+uninstall \
+uninstall.libs ::
+	$(SHELL) -c 'for name in $(SOURCE_DIR_SRC)/*.ad[sb] $(GENERATED_SOURCES); do rm -f $(ADA_INCLUDE)/`basename $$name`; done'
 
-$(ABASE)-menus-menu_user_data.o: \
-		$(ABASE)-menus-menu_user_data.ads \
-		$(srcdir)/$(ABASE)-menus-menu_user_data.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-menus-menu_user_data.adb
+@MAKE_ADA_SHAREDLIB@install \
+@MAKE_ADA_SHAREDLIB@install.libs :: $(ADA_OBJECTS) $(LIBDIR)
+@MAKE_ADA_SHAREDLIB@	$(INSTALL_LIB) \
+@MAKE_ADA_SHAREDLIB@		$(BUILD_DIR)/dynamic-ali/* \
+@MAKE_ADA_SHAREDLIB@		$(ADA_OBJECTS)
+@MAKE_ADA_SHAREDLIB@	$(INSTALL_LIB) \
+@MAKE_ADA_SHAREDLIB@		$(BUILD_DIR_LIB)/$(SHARED_LIBNAME) \
+@MAKE_ADA_SHAREDLIB@		$(LIBDIR)
+@MAKE_ADA_SHAREDLIB@	cd $(LIBDIR) && $(LN_S) $(SHARED_LIBNAME) $(SHARED_SYMLINK)
+@MAKE_ADA_SHAREDLIB@
+@MAKE_ADA_SHAREDLIB@uninstall \
+@MAKE_ADA_SHAREDLIB@uninstall.libs ::
+@MAKE_ADA_SHAREDLIB@	$(SHELL) -c 'for name in $(BUILD_DIR)/dynamic-ali/* ; do rm -f $(ADA_OBJECTS)/`basename $$name`; done'
+@MAKE_ADA_SHAREDLIB@
+@MAKE_ADA_SHAREDLIB@uninstall \
+@MAKE_ADA_SHAREDLIB@uninstall.libs ::
+@MAKE_ADA_SHAREDLIB@	rm -f $(LIBDIR)/$(SHARED_SYMLINK)
+@MAKE_ADA_SHAREDLIB@	rm -f $(LIBDIR)/$(SHARED_LIBNAME)
 
-$(ABASE)-menus-item_user_data.o: \
-		$(ABASE)-menus-item_user_data.ads \
-		$(srcdir)/$(ABASE)-menus-item_user_data.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-menus-item_user_data.adb
-
-$(ABASE)-forms-form_user_data.o: \
-		$(ABASE)-forms-form_user_data.ads \
-		$(srcdir)/$(ABASE)-forms-form_user_data.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-form_user_data.adb
-
-$(ABASE)-forms-field_user_data.o: \
-		$(ABASE)-forms-field_user_data.ads \
-		$(srcdir)/$(ABASE)-forms-field_user_data.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_user_data.adb
-
-$(ABASE)-forms-field_types-enumeration-ada.o: \
-		$(srcdir)/$(ABASE)-forms-field_types-enumeration-ada.ads \
-		$(srcdir)/$(ABASE)-forms-field_types-enumeration-ada.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-forms-field_types-enumeration-ada.adb
-
-$(ABASE)-panels-user_data.o: \
-		$(ABASE)-panels-user_data.ads \
-		$(srcdir)/$(ABASE)-panels-user_data.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-panels-user_data.adb
-
-$(ABASE)-text_io-integer_io.o: \
-		$(srcdir)/$(ABASE)-text_io-integer_io.ads \
-		$(srcdir)/$(ABASE)-text_io-integer_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-integer_io.adb
-
-$(ABASE)-text_io-float_io.o: \
-		$(srcdir)/$(ABASE)-text_io-float_io.ads \
-		$(srcdir)/$(ABASE)-text_io-float_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-float_io.adb
-
-$(ABASE)-text_io-fixed_io.o: \
-		$(srcdir)/$(ABASE)-text_io-fixed_io.ads \
-		$(srcdir)/$(ABASE)-text_io-fixed_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-fixed_io.adb
-
-$(ABASE)-text_io-decimal_io.o: \
-		$(srcdir)/$(ABASE)-text_io-decimal_io.ads \
-		$(srcdir)/$(ABASE)-text_io-decimal_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-decimal_io.adb
-
-$(ABASE)-text_io-enumeration_io.o: \
-		$(srcdir)/$(ABASE)-text_io-enumeration_io.ads \
-		$(srcdir)/$(ABASE)-text_io-enumeration_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-enumeration_io.adb
-
-$(ABASE)-text_io-modular_io.o: \
-		$(srcdir)/$(ABASE)-text_io-modular_io.ads \
-		$(srcdir)/$(ABASE)-text_io-modular_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-modular_io.adb
-
-$(ABASE)-text_io-complex_io.o: \
-		$(srcdir)/$(ABASE)-text_io-complex_io.ads \
-		$(srcdir)/$(ABASE)-text_io-complex_io.adb $(BASEDEPS)
-	$(ADA) $(ADAFLAGS) -c -o $@ $(srcdir)/$(ABASE)-text_io-complex_io.adb
+clean ::
+	rm -rf $(BUILD_DIR)/*-ali
+	rm -rf $(BUILD_DIR)/*-obj
+	rm -rf $(BUILD_DIR_LIB)