# Makefile for CLISP module set pari

srcdir = /build/reproducible-path/clisp-2.49.20241123.git9ff8aed/modules/pari
CC = gcc
PARICPPFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/libsvm
CFLAGS = -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/clisp-2.49.20241123.git9ff8aed=. -fstack-protector --param=ssp-buffer-size=4 -fstack-clash-protection -Wformat -Werror=format-security
CLISP = /build/reproducible-path/clisp-2.49.20241123.git9ff8aed/debian/build/clisp -K base  -E UTF-8 -Emisc 1:1 -Epathname 1:1 -norc -norc -q
CLISP_LINKKIT = /build/reproducible-path/clisp-2.49.20241123.git9ff8aed/debian/build/linkkit
prefix = 
datarootdir = ${prefix}/share
PARI_DATADIR = /usr/share/pari

LN = ln
LN_S = ln -s

MAKE = make

SHELL = /bin/sh

ALL_CFLAGS = $(CPPFLAGS) $(PARICPPFLAGS) $(CFLAGS) -I$(CLISP_LINKKIT) \
  -I$(srcdir) # for cpari.h

GENERATED = pari.o cpari.o pari.fas preload.lisp
DISTRIBFILES = link.sh Makefile $(GENERATED) \
	$(srcdir)/pari.lisp $(srcdir)/desc2lisp.lisp $(srcdir)/README
distribdir =

# default target: make the module
clisp-module : $(GENERATED)

desc2lisp.fas : $(srcdir)/desc2lisp.lisp
	$(CLISP) -c $(srcdir)/desc2lisp.lisp -o ./

pari.fas pari.c : $(srcdir)/pari.lisp desc2lisp.fas
	$(CLISP) -i desc2lisp -c $(srcdir)/pari.lisp -o ./ $(PARI_DATADIR)

pari.o : pari.c config.h
	$(CC) $(ALL_CFLAGS) -c pari.c

cpari.o : $(srcdir)/cpari.c
	$(CC) -I. $(ALL_CFLAGS) -c $(srcdir)/cpari.c

preload.lisp : $(srcdir)/preload.lisp
	$(LN_S) $(srcdir)/preload.lisp .

# Make a module distribution into $(distribdir)
clisp-module-distrib : clisp-module force
	$(LN) $(DISTRIBFILES) $(distribdir)

clean : force
	rm -f core *.o *.a *.fas *.lib

distclean : clean

force :
