Make install paths more configurable and add GNAT project file

This will ease Debian packaging.
This commit is contained in:
Nicolas Boulenguez 2020-06-18 15:07:01 +02:00 committed by Samuel Tardieu
parent a6a25eb0c4
commit 3b784f7f4c
4 changed files with 54 additions and 10 deletions

View File

@ -7,8 +7,34 @@ AM_CONFIG_HEADER(src/config.h)
#
# Package description
#
LIBVERSIONINFO=1:0:0
AC_ARG_WITH([libversioninfo],
[AS_HELP_STRING([--with-libversion=VSN],
[Shared Object version for relocatable library [1:0:0]])],
[LIBVERSIONINFO=$withval],
[LIBVERSIONINFO=1:0:0])
AC_SUBST(LIBVERSIONINFO)
#
AC_ARG_WITH([adasrcinstalldir],
[AS_HELP_STRING([--with-adasrcinstalldir=DIR],
[Ada sources go under DIR/adasockets [LIBDIR]])],
[ada_src_install_dir=$withval],
[ada_src_install_dir='${libdir}'])
AC_SUBST(ada_src_install_dir)
#
AC_ARG_WITH([aliinstalldir],
[AS_HELP_STRING([--with-aliinstalldir=DIR],
[Ada Lib Info go under DIR/adasockets [LIBDIR]])],
[ali_install_dir=$withval],
[ali_install_dir='${libdir}'])
AC_SUBST(ali_install_dir)
#
AC_ARG_WITH([gprinstalldir],
[AS_HELP_STRING([--with-gprinstalldir=DIR],
[GPRBuild project goes under DIR [DATADIR/gpr]])],
[gpr_install_dir=$withval],
[gpr_install_dir='${datadir}/gpr'])
AC_SUBST(gpr_install_dir)
#
AM_PROG_LIBTOOL
#
AC_CHECK_PROGS(AWK, [gnuawk gawk awk])

View File

@ -1,7 +1,5 @@
CCLD = $(CC)
privatelibdir = $(libdir)/adasockets
bin_SCRIPTS = adasockets-config
lib_LTLIBRARIES = libadasockets.la
@ -94,20 +92,32 @@ SUFFIXES = .ads .lo .ali
.lo.ali:
# ./configure would not substitute ${prefix} in the project.
install-data-local: all
rm -rf $(DESTDIR)$(privatelibdir)
$(mkinstalldirs) $(DESTDIR)$(privatelibdir)
$(INSTALL) -m 444 $(ALIS) $(DESTDIR)$(privatelibdir)
rm -fr $(DESTDIR)$(ada_src_install_dir)/adasockets \
$(DESTDIR)$(ali_install_dir)/adasockets
$(mkinstalldirs) \
$(DESTDIR)$(ada_src_install_dir)/adasockets \
$(DESTDIR)$(ali_install_dir)/adasockets \
$(DESTDIR)$(gpr_install_dir)
$(INSTALL) -m 444 $(ALIS) $(DESTDIR)$(ali_install_dir)/adasockets
for i in $(dist_libadasockets_la_SOURCES) $(nodist_libadasockets_la_SOURCES); do \
if test -f $$i; then \
$(INSTALL) -m 644 $$i $(DESTDIR)$(privatelibdir); \
$(INSTALL) -m 644 $$i $(DESTDIR)$(ada_src_install_dir)/adasockets; \
else \
$(INSTALL) -m 644 $(srcdir)/$$i $(DESTDIR)$(privatelibdir); \
$(INSTALL) -m 644 $(srcdir)/$$i $(DESTDIR)$(ada_src_install_dir)/adasockets; \
fi \
done
sed -e 's|@libdir[@]|$(libdir)|' \
-e 's|@ada_src_install_dir[@]|$(ada_src_install_dir)|' \
-e 's|@ali_install_dir[@]|$(ali_install_dir)|' \
$(srcdir)/adasockets.gpr.in > $(DESTDIR)$(gpr_install_dir)/adasockets.gpr
chmod 644 $(DESTDIR)$(gpr_install_dir)/adasockets.gpr
uninstall-local:
rm -rf $(DESTDIR)$(privatelibdir)
rm -fr $(DESTDIR)$(ada_src_install_dir)/adasockets \
$(DESTDIR)$(ali_install_dir)/adasockets
rm -f $(DESTDIR)$(gpr_install_dir)/adasockets.gpr
### DO NOT REMOVE THIS LINE, IT IS USED BY MAKEDEPEND ###
sockets-multicast.lo : sockets.ads sockets.adb sockets-constants.ads \

8
src/adasockets.gpr.in Normal file
View File

@ -0,0 +1,8 @@
library project Adasockets is
for Library_Name use "adasockets";
for Library_Kind use "relocatable";
for Library_Dir use "@libdir@";
for Source_Dirs use ("@ada_src_install_dir@/adasockets");
for Library_ALI_Dir use "@ali_install_dir@/adasockets";
for Externally_Built use "true";
end Adasockets;

View File

@ -8,4 +8,4 @@ Description: BSD sockets in Ada.
Requires:
Version: @VERSION@
Libs: -L${libdir} -ladasockets
Cflags: -I${libdir}/adasockets -L${libdir}/adasockets
Cflags: -aI@ada_src_install_dir@/adasockets -aO@ali_install_dir@/adasockets