about summary refs log blame commit diff
path: root/perl/Makefile.am
blob: eded469f924bba4a8d0a80560c8f389131062c95 (plain) (tree)
1
2
3
4
5
6
7
8
9
10



                                                                        
                                                                                                                  
 
                         
                                                                 

                                        
                                                 
                                                                        
















                                                                                           
                                             

                        
perlversion := $(shell perl -e 'use Config; print $$Config{version};')
perlarchname := $(shell perl -e 'use Config; print $$Config{archname};')
perllibdir = $(libdir)/perl5/site_perl/$(perlversion)/$(perlarchname)

PERL_MODULES = lib/Nix/Store.pm lib/Nix/Manifest.pm lib/Nix/GeneratePatches.pm lib/Nix/SSH.pm lib/Nix/Config.pm.in

all: $(PERL_MODULES:.in=)
	ln -sfn $(abs_builddir)/.libs/libNixStore.so lib/Store.so

install-exec-local: $(PERL_MODULES:.in=)
	$(INSTALL) -d $(DESTDIR)$(perllibdir)/Nix
	$(INSTALL_DATA) $(PERL_MODULES:.in=) $(DESTDIR)$(perllibdir)/Nix
	$(INSTALL) -d $(DESTDIR)$(perllibdir)/auto/Nix/Store
	ln -sfn $(pkglibdir)/libNixStore.so $(DESTDIR)$(perllibdir)/auto/Nix/Store/Store.so

# Awful hackery to get libtool to build Perl XS bindings.
pkglib_LTLIBRARIES = libNixStore.la

libNixStore_la_SOURCES = lib/Nix/Store.cc

libNixStore_la_LIBADD = $(top_srcdir)/src/libstore/libstore.la

AM_CXXFLAGS = \
  -I$(top_srcdir)/src -I$(top_srcdir)/src/libutil -I$(top_srcdir)/src/libstore \
  -I$(shell perl -e 'use Config; print $$Config{archlibexp};')/CORE

lib/Nix/Store.cc: lib/Nix/Store.xs
	xsubpp $^ -output $@

EXTRA_DIST = $(PERL_MODULES) lib/Nix/Store.xs

include ../substitute.mk