X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=Ada95%2Fsrc%2FMakefile.in;h=163697c50f5d923e497d649915e19aa510b0bd47;hp=9febdce9b9fb2d1118f642c681c2220c5ff2dd04;hb=0141530788318928d6e4da45eb1ec88c86940645;hpb=677412a37f53a465b9b127843d4aa070077659e8 diff --git a/Ada95/src/Makefile.in b/Ada95/src/Makefile.in index 9febdce9..163697c5 100644 --- a/Ada95/src/Makefile.in +++ b/Ada95/src/Makefile.in @@ -28,7 +28,7 @@ # # Author: Juergen Pfeifer, 1996 # -# $Id: Makefile.in,v 1.35 2010/02/27 19:54:38 tom Exp $ +# $Id: Makefile.in,v 1.43 2010/06/19 20:25:18 tom Exp $ # .SUFFIXES: @@ -43,6 +43,7 @@ top_srcdir = @top_srcdir@ srcdir = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ +libdir = ${exec_prefix}/lib ADA_INCLUDE = $(DESTDIR)@ADA_INCLUDE@ ADA_OBJECTS = $(DESTDIR)@ADA_OBJECTS@ @@ -74,23 +75,57 @@ LINK = $(CC) LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ RANLIB = @RANLIB@ -TAR_COPY = @NCURSES_COPY2@ ################################################################################ ADA = @cf_ada_compiler@ ADAPREP = gnatprep ADAFLAGS = @ADAFLAGS@ -I. -I$(srcdir) +LIB_NAME = AdaCurses +SONAME = @ADA_SHAREDLIB@ + +GNAT_PROJECT = library.gpr + +# build/source are the Ada95 tree +BUILD_DIR = @srcdir@/.. +SOURCE_DIR = @srcdir@/.. + +BUILD_DIR_LIB = $(BUILD_DIR)/lib +SOURCE_DIR_SRC = $(SOURCE_DIR)/src + ADAMAKE = @cf_ada_make@ -ADAMAKEFLAGS = +ADAMAKEFLAGS = \ + -p \ + -P$(GNAT_PROJECT) \ + -XBUILD_DIR=$(BUILD_DIR) \ + -XSOURCE_DIR=$(SOURCE_DIR) \ + -XLIB_NAME=$(LIB_NAME) \ + -XSONAME=$(SONAME) CARGS = -cargs $(ADAFLAGS) LARGS = -LIBRARY_FILE = libAdaCurses.a +MY_STATIC_LIB = $(BUILD_DIR_LIB)/lib$(LIB_NAME).a +MY_SHARED_LIB = $(BUILD_DIR_LIB)/$(SONAME) + ALIB = @cf_ada_package@ ABASE = $(ALIB)-curses - +################################################################################ +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 +################################################################################ LIBALIS=$(ALIB).ali \ $(ABASE)-aux.ali \ $(ABASE).ali \ @@ -171,11 +206,13 @@ GENOBJS=$(ABASE)-menus-menu_user_data.o \ $(ABASE)-text_io-modular_io.o \ $(ABASE)-text_io-complex_io.o - -all :: $(LIBRARY_FILE) +all :: $(MY_STATIC_LIB) @echo done -$(LIBRARY_FILE) :: $(LIBOBJS) @cf_generic_objects@ +$(BUILD_DIR_LIB) : + mkdir -p $@ + +$(MY_STATIC_LIB) :: $(BUILD_DIR_LIB) $(LIBOBJS) @cf_generic_objects@ $(AR) $(ARFLAGS) $@ $(LIBOBJS) @cf_generic_objects@ sources : @@ -183,12 +220,12 @@ sources : libs \ install \ -install.libs :: $(LIBRARY_FILE) - @echo made $(LIBRARY_FILE) +install.libs :: $(MY_STATIC_LIB) + @echo made $(MY_STATIC_LIB) install \ -install.libs :: $(LIBRARY_FILE) - @$(TAR_COPY) $(LIBRARY_FILE) . $(ADA_OBJECTS) +install.libs :: $(MY_STATIC_LIB) + @$(INSTALL_LIB) $(MY_STATIC_LIB) $(ADA_OBJECTS) @echo made $@ uninstall \ @@ -398,3 +435,42 @@ $(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 + +# in-progress rewrite to use gnatmake library project files + +test_make: $(ABASE)-trace.adb + $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=static +@MAKE_ADA_SHAREDLIB@ $(ADAMAKE) $(ADAMAKEFLAGS) -XLIB_KIND=dynamic + +test_install: + install --directory $(ADA_INCLUDE) + $(INSTALL_LIB) \ + $(SOURCE_DIR_SRC)/*.ad[sb] \ + $(GENERATED_SOURCES) \ + $(ADA_INCLUDE) + install --directory $(ADA_OBJECTS) +@MAKE_ADA_SHAREDLIB@ $(INSTALL_LIB) \ +@MAKE_ADA_SHAREDLIB@ $(BUILD_DIR)/dynamic-ali/* \ +@MAKE_ADA_SHAREDLIB@ $(ADA_OBJECTS) + $(INSTALL_LIB) \ + $(MY_STATIC_LIB) \ + $(DESTDIR)/usr/lib +@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@ 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)