# $OpenXM: OpenXM/src/ox_ntl/Makefile.in,v 1.5 2008/09/19 10:55:40 iwane Exp $ # @configure_input@ ### # # build and install NTL # % make install-ntl # # build ox_ntl # % make # PROG=ox_ntl PROGL=oxsv PROGL2=liboxsv.so OpenXM_HOME=$(PWD)/../.. PREFIX=$(OpenXM_HOME) CXX=@CXX@ CC =@CC@ #install_sh = @install_sh@ install_sh = $(OpenXM_HOME)/src/ox_toolkit/install-sh RM ?= /bin/rm CP ?= /bin/cp MAKE ?= make LINT ?= lint CFLAGS=@OPTFLAG@ @CFLAGS@ @CPPFLAGS@ CXXFLAGS=@OPTFLAG@ @CXXFLAGS@ CPPFLAGS=-I$(PREFIX)/include # WITH_GMP <== for ox_toolkit -- include "gmp.h" # __GMP_FALE_H__ <== -- dont include "gmp_fake.h" DEFS=-DWITH_GMP=1 -D__GMP_FAKE_H__ @DEFS@ MASTER_CITES=ftp.math.sci.kobe-u.ac.jp NTL_LIBDIR=$(PREFIX)/lib/NTL LIBDIR=$(PREFIX)/lib LIBS=-lgmp -lox -lgc @LIBS@ LDFLAGS=@LDFLAGS@ -L$(LIBDIR) -L$(NTL_LIBDIR) -L. DISTDIR=$(OpenXM_HOME)/../OpenXM_dist DISTFILEDIR=ntl-5.3.1 DISTFILE=ntl-5.3.1.tar.gz WORK=$(PWD)/work GMPOPT=NTL_GMP_LIP=on GMP_PREFIX=$(OpenXM_HOME) GMP_INCDIR=$(OpenXM_HOME)/include GMP_LIBDIR=$(OpenXM_HOME)/lib # lint LINT=lint LINTFLAGS=-I$(PREFIX)/include .SUFFIXES: .cpp .o .c SRCC=oxserv.c oxstack.c SRCP=main.cpp ntl.cpp ntlconv.cpp cmon.cpp OBJCC=$(SRCC:.c=.o) OBJCP=$(SRCP:.cpp=.o) all: $(PROG) $(PROG): $(OBJCP) $(PROGL2) $(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJCP) -o $@ -l$(PROGL) -lntl $(PROGL2): $(OBJCC) $(CC) -shared $(LDFLAGS) $(OBJCC) -o $@ $(LIBS) strip $(PROGL2) oxserv.c: oxserv.h oxstack.h oxstack.c: oxstack.h main.cpp: oxserv.h ntl.h oxstack.h cmon.cpp: ntl.h ntl.cpp: ntl.h ntlconv.cpp: ntl.h .cpp.o: $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@ .c.o: $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@ install: all $(CP) $(PROG) $(PREFIX)/bin $(CP) $(PROGL2) $(PREFIX)/lib clean: -$(RM) -f $(OBJC) $(OBJCC) $(OBJCP) -$(RM) -f $(PROG) $(PROGL2) ox_ntl_debug oxserv_debug -$(RM) -fr $(WORK) @-$(RM) -f .*-ntl-done lint: $(LINT) $(LINTFLAGS) $(SRCC) fetch-ntl: @if [ ! -f .fetch-ntl-done ]; then \ $(OpenXM_HOME)/bin/oxfetch.sh ftp://$(MASTER_CITES)/pub/OpenXM/misc/1.2.2/$(DISTFILE) $(DISTDIR); \ touch .fetch-ntl-done; \ fi extract-ntl: fetch-ntl -@mkdir -p $(WORK) @if [ ! -f .extract-ntl-done ]; then \ (cd $(WORK); tar xvzf $(DISTDIR)/$(DISTFILE)); \ touch .extract-ntl-done; \ fi patch-ntl: extract-ntl @if [ ! -f .patch-ntl-done ]; then \ touch .patch-ntl-done; \ fi build-ntl: patch-ntl @if [ ! -f .build-ntl-done ]; then \ (cd $(WORK)/$(DISTFILEDIR)/src; \ export LD_LIBRARY_PATH=$(OpenXM_HOME)/lib; \ ./configure LIBDIR=$(NTL_LIBDIR) PREFIX=$(PREFIX) $(GMPOPT); \ $(MAKE)); \ touch .build-ntl-done; \ fi install-ntl: build-ntl @if [ ! -f .install-ntl-done ]; then \ (cd $(WORK)/$(DISTFILEDIR)/src; $(MAKE) install); \ touch .install-ntl-done; \ fi ######################################### # DEBUG ######################################### ox_ntl_debug: ntl.cpp ntl.h ntlconv.cpp $(CXX) $(CXXFLAGS) -g -D__NTL_DEBUG=1 -L/usr/local/lib -L$(LIBDIR) -L$(NTL_LIBDIR) ntl.cpp ntlconv.o -o $@ -lntl -lgmp -lox -lgc oxserv_debug: oxserv.h oxserv.c $(CC) $(CFLAGS) $(CPPFLAGS) -g -D__OXSERV_DEBUG=1 -L$(LIBDIR) oxserv.c oxstack.o -o $@ -lox -lgc