Skip to content

Commit 64b5b59

Browse files
committed
Added NTL-interface guff to configure and Makefile.in.
1 parent fde0541 commit 64b5b59

File tree

3 files changed

+54
-18
lines changed

3 files changed

+54
-18
lines changed

Makefile.in

+25-16
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
LIBS=-L$(CURDIR) -L$(FLINT_MPIR_LIB_DIR) -L$(FLINT_MPFR_LIB_DIR) -lflint -lmpir -lmpfr -lm
2-
LIBS2=-L$(FLINT_MPIR_LIB_DIR) -L$(FLINT_MPFR_LIB_DIR) -lmpir -lmpfr -lm
3-
INCS=-I$(CURDIR) -I$(FLINT_MPIR_INCLUDE_DIR) -I$(FLINT_MPFR_INCLUDE_DIR)
1+
LIBS=-L$(CURDIR) -L$(FLINT_MPIR_LIB_DIR) -L$(FLINT_MPFR_LIB_DIR) -L$(FLINT_NTL_LIB_DIR) -lflint -lmpir -lmpfr -lm
2+
LIBS2=-L$(FLINT_MPIR_LIB_DIR) -L$(FLINT_MPFR_LIB_DIR) -L$(FLINT_NTL_LIB_DIR) -lmpir -lmpfr -lm
3+
INCS=-I$(CURDIR) -I$(FLINT_MPIR_INCLUDE_DIR) -I$(FLINT_MPFR_INCLUDE_DIR) -I$(FLINT_NTL_INCLUDE_DIR)
44
LINKLIBS=
55

6-
LD_LIBRARY_PATH:=${CURDIR}:${FLINT_MPFR_LIB_DIR}:${FLINT_MPIR_LIB_DIR}:${LD_LIBRARY_PATH}
6+
LD_LIBRARY_PATH:=${CURDIR}:${FLINT_MPFR_LIB_DIR}:${FLINT_MPIR_LIB_DIR}:${FLINT_NTL_LIB_DIR}:${LD_LIBRARY_PATH}
77
export LD_LIBRARY_PATH
88
export
99

@@ -69,20 +69,29 @@ endif
6969

7070
library: library-recursive $(OBJS) $(LIB_OBJS)
7171
mkdir -p build
72-
ifdef FLINT_SHARED
73-
$(CC) -fPIC -shared $(LIB_OBJS) $(LIBS2) -o $(FLINT_LIB)
74-
endif
75-
ifdef FLINT_STATIC
76-
$(AR) rcs libflint.a $(OBJS) $(LINKLIBS)
77-
endif
72+
mkdir -p build/iterfaces
73+
if [ "$(WANT_NTL)" -eq "1" ]; then \
74+
if [ "$(FLINT_SHARED)" -eq "1" ]; then \
75+
$(CXX) -fPIC $(CFLAGS) $(INCS) -c interfaces/NTL-interface.cpp -o build/interfaces/NTL-interface.lo; \
76+
fi; \
77+
if [ "$(FLINT_STATIC)" -eq "1" ]; then \
78+
$(CXX) -fPIC $(CFLAGS) $(INCS) -c interfaces/NTL-interface.cpp -o build/interfaces/NTL-interface.o; \
79+
fi; \
80+
fi
81+
if [ "$(FLINT_SHARED)" -eq "1" ]; then \
82+
$(CC) -fPIC -shared $(LIB_OBJS) $(LIBS2) -o $(FLINT_LIB); \
83+
fi
84+
if [ "$(FLINT_STATIC)" -eq "1" ]; then \
85+
$(AR) rcs libflint.a $(OBJS) $(LINKLIBS); \
86+
fi
7887

7988
library-recursive:
80-
ifdef FLINT_STATIC
81-
$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir);)
82-
endif
83-
ifdef FLINT_SHARED
84-
$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) library;)
85-
endif
89+
if [ "$(FLINT_STATIC)" -eq "1" ]; then \
90+
$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir);) \
91+
fi
92+
if [ "$(FLINT_SHARED)" -eq "1" ]; then \
93+
$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) library;) \
94+
fi
8695

8796
$(FLINT_LIB): library
8897

configure

+29-2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
PREFIX="/usr/local"
77
MPIR_DIR="/usr"
88
MPFR_DIR="/usr"
9+
NTL_DIR="/usr"
10+
WANT_NTL=0
911
SHARED=1
1012
STATIC=1
1113

@@ -17,6 +19,7 @@ usage()
1719
echo " where <args> may be:"
1820
echo " --with-mpir=<path> Specify location of MPIR"
1921
echo " --with-mpfr=<path> Specify location of MPFR"
22+
echo " --with-ntl=<path> Specify location of NTL and build NTL interface"
2023
echo " --prefix=<path> Specify path to installation location"
2124
echo " --disable-shared Do not build a shared library"
2225
echo " --disable-static Do not build a static library"
@@ -36,6 +39,10 @@ until [ -z "$1" ]; do
3639
"--with-mpfr="*)
3740
MPFR_DIR=`expr substr "$1" 13 length "$1"`
3841
;;
42+
"--with-ntl="*)
43+
NTL_DIR=`expr substr "$1" 12 length "$1"`
44+
WANT_NTL=1
45+
;;
3946
"--prefix="*)
4047
PREFIX=`expr substr "$1" 10 length "$1"`
4148
;;
@@ -83,6 +90,14 @@ else
8390
exit 1
8491
fi
8592

93+
if [ -d "${NTL_DIR}/lib" ]; then
94+
NTL_LIB_DIR="${NTL_DIR}/lib"
95+
NTL_INCLUDE_DIR="${NTL_DIR}/include"
96+
else
97+
echo "Invalid NTL directory"
98+
exit 1
99+
fi
100+
86101
if [ "`uname`" = "Linux" -a "`uname -m`" = "x86_64" ]; then
87102
FLINT_TUNE="-funroll-loops "
88103
elif [ "`uname`" = "Darwin" -a "`uname -m`" = "Power Macintosh" ]; then
@@ -111,23 +126,35 @@ if [ -z "$CC" ]; then
111126
CC=gcc
112127
fi
113128

129+
if [ -z "$CXX" ]; then
130+
CXX=g++
131+
fi
132+
114133
CFLAGS="$CFLAGS $FLINT_TUNE"
115134

116135
echo "# This file is autogenerated by ./configure -- do not edit!" > Makefile
117136
echo "" >> Makefile
118-
if [ "$STATIC" = "1" ]; then
137+
if [ "$STATIC" -eq "1" ]; then
119138
echo "FLINT_STATIC=1" >> Makefile
120139
fi
121-
if [ "$SHARED" = "1" ]; then
140+
if [ "$SHARED" -eq "1" ]; then
122141
echo "FLINT_SHARED=1" >> Makefile
123142
fi
143+
if [ "$WANT_NTL" -eq "1" ]; then
144+
echo "WANT_NTL=1" >> Makefile
145+
echo "OBJ_EXTRAS="build/interfaces/NTL-interface.o" >> Makefile
146+
echo "LIB_EXTRAS="build/interfaces/NTL-interface.lo" >> Makefile
147+
fi
124148
echo "FLINT_MPIR_LIB_DIR=$MPIR_LIB_DIR" >> Makefile
125149
echo "FLINT_MPIR_INCLUDE_DIR=$MPIR_INCLUDE_DIR" >> Makefile
126150
echo "FLINT_MPFR_LIB_DIR=$MPFR_LIB_DIR" >> Makefile
127151
echo "FLINT_MPFR_INCLUDE_DIR=$MPFR_INCLUDE_DIR" >> Makefile
152+
echo "FLINT_NTL_LIB_DIR=$NTL_LIB_DIR" >> Makefile
153+
echo "FLINT_NTL_INCLUDE_DIR=$NTL_INCLUDE_DIR" >> Makefile
128154
echo "" >> Makefile
129155
echo "FLINT_LIB=$FLINT_LIB" >> Makefile
130156
echo "CC=$CC" >> Makefile
157+
echo "CXX=$CXX" >> Makefile
131158
echo "CFLAGS=$CFLAGS" >> Makefile
132159
echo "PREFIX=$PREFIX" >> Makefile
133160
echo "" >> Makefile
File renamed without changes.

0 commit comments

Comments
 (0)