]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - Ada95/src/Makefile.in
ncurses 6.1 - patch 20180210
[ncurses.git] / Ada95 / src / Makefile.in
index 6149e3a14e91cae6eb06149c72d5cc88c06ab36e..cc503e9ed1af0f9dba930959b9175044696cc254 100644 (file)
@@ -1,5 +1,5 @@
 ##############################################################################
-# Copyright (c) 1998-2009,2010 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2016,2018 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"), #
 #
 #  Author:  Juergen Pfeifer, 1996
 #
-#  $Id: Makefile.in,v 1.46 2010/06/26 21:28:56 tom Exp $
+#  $Id: Makefile.in,v 1.80 2018/01/15 22:12:07 tom Exp $
 #
 .SUFFIXES:
 
-SHELL          = /bin/sh
+SHELL          = @SHELL@
+VPATH          = @srcdir@
 THIS           = Makefile
 
+ADA_MFLAGS     = @cf_cv_makeflags@
+@SET_MAKE@
+
 MODEL          = ../../@DFT_OBJ_SUBDIR@
 
 DESTDIR                = @DESTDIR@
@@ -43,12 +47,14 @@ top_srcdir  = @top_srcdir@
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
-libdir         = ${exec_prefix}/lib
+includedir     = @includedir@
+libdir         = @libdir@
 
+LIBDIR         = $(DESTDIR)$(libdir)
 ADA_INCLUDE    = $(DESTDIR)@ADA_INCLUDE@
 ADA_OBJECTS    = $(DESTDIR)@ADA_OBJECTS@
 
-INSTALL                = @INSTALL@
+INSTALL                = @INSTALL@ @INSTALL_OPT_O@
 INSTALL_LIB    = @INSTALL@ @INSTALL_LIB@
 
 AR             = @AR@
@@ -59,7 +65,7 @@ LN_S          = @LN_S@
 CC             = @CC@
 CFLAGS         = @CFLAGS@
 
-CPPFLAGS       = @ACPPFLAGS@ \
+CPPFLAGS       = @ACPPFLAGS@ @CPPFLAGS@ \
                  -DHAVE_CONFIG_H -I$(srcdir)
 
 CCFLAGS                = $(CPPFLAGS) $(CFLAGS)
@@ -84,11 +90,11 @@ ADAFLAGS        = @ADAFLAGS@ -I. -I$(srcdir)
 LIB_NAME       = AdaCurses
 SONAME         = @ADA_SHAREDLIB@
 
-GNAT_PROJECT   = library.gpr
+GNAT_PROJECT   = AdaCurses.gpr
 
 # build/source are the Ada95 tree
-BUILD_DIR      = @srcdir@/..
-SOURCE_DIR     = @srcdir@/..
+BUILD_DIR      = ..
+SOURCE_DIR     = ..
 
 BUILD_DIR_LIB  = $(BUILD_DIR)/lib
 SOURCE_DIR_SRC = $(SOURCE_DIR)/src
@@ -96,16 +102,18 @@ SOURCE_DIR_SRC     = $(SOURCE_DIR)/src
 ADAMAKE         = @cf_ada_make@
 ADAMAKEFLAGS    = \
        -P$(GNAT_PROJECT) \
-       -XBUILD_DIR=$(BUILD_DIR) \
-       -XSOURCE_DIR=$(SOURCE_DIR) \
+       -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           =
 
-MY_STATIC_LIB  = $(BUILD_DIR_LIB)/lib$(LIB_NAME).a
-MY_SHARED_LIB  = $(BUILD_DIR_LIB)/$(SONAME)
+STATIC_LIBNAME = lib$(LIB_NAME).a
+SHARED_LIBNAME = $(SONAME)
+SHARED_SYMLINK = lib$(LIB_NAME).so
 
 ALIB            = @cf_ada_package@
 ABASE           = $(ALIB)-curses
@@ -165,31 +173,38 @@ GENOBJS=$(ABASE)-menus-menu_user_data.o                   \
        $(ABASE)-text_io-modular_io.o                   \
        $(ABASE)-text_io-complex_io.o
 
-all ::  $(MY_STATIC_LIB)
+all ::  $(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
        @echo done
 
+$(ADA_INCLUDE) \
+$(ADA_OBJECTS) \
+$(LIBDIR) \
 $(BUILD_DIR_LIB) :
        mkdir -p $@
 
-$(MY_STATIC_LIB) :: $(BUILD_DIR_LIB) $(LIBOBJS) @cf_generic_objects@
-       $(AR) $(ARFLAGS) $@ $(LIBOBJS) @cf_generic_objects@
+$(GENERATED_SOURCES) :
+       cd ../gen; $(MAKE) $(ADA_MFLAGS)
 
-sources :
+sources : $(GENERATED_SOURCES)
        @echo made $@
 
 libs \
 install \
-install.libs :: $(MY_STATIC_LIB)
-       @echo made $(MY_STATIC_LIB)
+install.libs :: \
+               $(BUILD_DIR_LIB)/$(STATIC_LIBNAME)
+       @echo made $(STATIC_LIBNAME)
 
 install \
-install.libs :: $(MY_STATIC_LIB)
-       @$(INSTALL_LIB) $(MY_STATIC_LIB) $(ADA_OBJECTS)
-       @echo made $@
+install.libs :: \
+               $(BUILD_DIR_LIB)/$(STATIC_LIBNAME) \
+               $(ADA_OBJECTS)
+       @$(INSTALL_LIB) \
+               $(BUILD_DIR_LIB)/$(STATIC_LIBNAME) \
+               $(ADA_OBJECTS)
 
 uninstall \
 uninstall.libs ::
-       @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
@@ -206,10 +221,42 @@ BASEDEPS=$(ABASE).ads $(ABASE)-aux.ads $(ABASE).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 $@
+
+###############################################################################
+# 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
+
+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
 
 ###############################################################################
-# in-progress rewrite to use gnatmake library project files
+# 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
+
+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
+
+###############################################################################
+
+@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)
 
 $(BUILD_DIR)/static-ali : ; mkdir -p $@
 $(BUILD_DIR)/static-obj : ; mkdir -p $@
@@ -219,8 +266,33 @@ STATIC_DIRS = \
        $(BUILD_DIR)/static-ali \
        $(BUILD_DIR)/static-obj
 
-test_make :: $(ABASE)-trace.adb $(STATIC_DIRS)
-       $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
+@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@    @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
+@USE_GNAT_PROJECTS@    -rm -f $(GNAT_PROJECT)
+@USE_GNAT_PROJECTS@    $(SHELL) $(srcdir)/library-cfg.sh static $(srcdir)/library.gpr $(CFLAGS_NORMAL) >$(GNAT_PROJECT)
+@USE_GNAT_PROJECTS@    @echo "Using GNAT Project:"
+@USE_GNAT_PROJECTS@    @-$(SHELL) -c "diff -u $(srcdir)/library.gpr $(GNAT_PROJECT); exit 0"
+@USE_GNAT_PROJECTS@    $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static
+@USE_GNAT_PROJECTS@    $(AR) $(ARFLAGS) $@ $(STATIC_C_OBJS)
+@USE_GNAT_PROJECTS@    -rm -f $(GNAT_PROJECT)
+@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)
+
+uninstall \
+uninstall.libs ::
+       @rm -f $(ADA_OBJECTS)/$(STATIC_LIBNAME)
+
+@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'
 
 $(BUILD_DIR)/dynamic-ali : ; mkdir -p $@
 $(BUILD_DIR)/dynamic-obj : ; mkdir -p $@
@@ -230,42 +302,57 @@ SHARED_DIRS = \
        $(BUILD_DIR)/dynamic-ali \
        $(BUILD_DIR)/dynamic-obj
 
-@MAKE_ADA_SHAREDLIB@test_make :: $(ABASE)-trace.adb $(SHARED_DIRS)
+@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@   @cf_ada_config@gprconfig --batch --config=Ada --config=C,,,,@cf_ada_config_C@
+@MAKE_ADA_SHAREDLIB@   -rm -f $(GNAT_PROJECT)
+@MAKE_ADA_SHAREDLIB@   $(SHELL) $(srcdir)/library-cfg.sh dynamic $(srcdir)/library.gpr $(CFLAGS_SHARED) >$(GNAT_PROJECT)
+@MAKE_ADA_SHAREDLIB@   @echo "Making Ada shared-lib:"
+@MAKE_ADA_SHAREDLIB@   @-$(SHELL) -c "diff -u $(srcdir)/library.gpr $(GNAT_PROJECT); exit 0"
 @MAKE_ADA_SHAREDLIB@   $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=dynamic
+@MAKE_ADA_SHAREDLIB@   -rm -f $(GNAT_PROJECT)
 
-test_install ::
-       install --directory $(ADA_INCLUDE)
+install \
+install.libs :: $(ADA_INCLUDE)
        $(INSTALL_LIB) \
                $(SOURCE_DIR_SRC)/*.ad[sb] \
-               $(GENERATED_SOURCES) \
                $(ADA_INCLUDE)
-       install --directory $(ADA_OBJECTS)
+
+install \
+install.libs :: $(ADA_INCLUDE)
        $(INSTALL_LIB) \
-               $(MY_STATIC_LIB) \
-               $(DESTDIR)/usr/lib
+               $(GENERATED_SOURCES) \
+               $(ADA_INCLUDE)
+
+uninstall \
+uninstall.libs ::
+       $(SHELL) -c 'for name in $(SOURCE_DIR_SRC)/*.ad[sb] $(GENERATED_SOURCES); do rm -f $(ADA_INCLUDE)/`basename $$name`; done'
 
-@MAKE_ADA_SHAREDLIB@test_install ::
+@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)/$(SONAME) \
-@MAKE_ADA_SHAREDLIB@           $(DESTDIR)/usr/lib
-@MAKE_ADA_SHAREDLIB@   cd $(DESTDIR)/usr/lib && ln -s $(SONAME) lib$(LIB_NAME).so
-
-test_uninstall ::
-       rm -rf \
-               $(ADA_INCLUDE) \
-               $(ADA_OBJECTS) \
-       rm -f \
-               $(DESTDIR)/usr/lib/lib$(LIB_NAME).a
-
-@MAKE_ADA_SHAREDLIB@test_uninstall ::
-@MAKE_ADA_SHAREDLIB@   rm -f \
-@MAKE_ADA_SHAREDLIB@           $(DESTDIR)/usr/lib/$(SONAME) \
-@MAKE_ADA_SHAREDLIB@           $(DESTDIR)/usr/lib/lib$(LIB_NAME).so
-
-test_clean:
-       rm -rf $(BUILD_DIR)/*-ali
-       rm -rf $(BUILD_DIR)/*-obj
-       rm -rf $(BUILD_DIR_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)
+
+clean ::
+       -rm -f default.cgpr
+       -rm -rf $(BUILD_DIR)/*-ali
+       -rm -rf $(BUILD_DIR)/*-obj
+       -rm -rf $(BUILD_DIR_LIB)