mirror of
https://github.com/vale981/arb
synced 2025-03-04 17:01:40 -05:00
version the library - patch by Julien Puydt
This commit is contained in:
parent
0b68cc51b7
commit
ceb8ad55f0
2 changed files with 49 additions and 8 deletions
13
Makefile.in
13
Makefile.in
|
@ -4,6 +4,8 @@ else
|
|||
$(DLPATH):=$(DLPATH_ADD)
|
||||
endif
|
||||
|
||||
LIBDIR=lib
|
||||
|
||||
QUIET_CC = @echo ' ' CC ' ' $@;
|
||||
QUIET_CXX = @echo ' ' CXX ' ' $@;
|
||||
QUIET_AR = @echo ' ' AR ' ' $@;
|
||||
|
@ -59,7 +61,7 @@ verbose:
|
|||
clean:
|
||||
$(AT)$(foreach dir, $(BUILD_DIRS), BUILD_DIR=../build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) clean || exit $$?;)
|
||||
$(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) clean || exit $$?;))
|
||||
rm -f $(OBJS) $(LOBJS) $(TESTS) $(PROFS) $(EXMPS) $(ARB_LIB) libarb.a
|
||||
rm -f $(OBJS) $(LOBJS) $(TESTS) $(PROFS) $(EXMPS) $(wildcard $(ARB_LIBNAME)*) libarb.a
|
||||
rm -rf build
|
||||
|
||||
distclean: clean
|
||||
|
@ -95,6 +97,10 @@ $(ARB_LIB): $(LOBJS) $(LIB_SOURCES) $(EXT_SOURCES) $(HEADERS) $(EXT_HEADERS) | b
|
|||
$(AT)if [ "$(WANT_NTL)" -ne "1" ]; then \
|
||||
$(CC) $(ABI_FLAG) -shared $(EXTRA_SHARED_FLAGS) $(LOBJS) $(MOD_LOBJS) $(EXT_OBJS) $(LIBS2) -o $(ARB_LIB); \
|
||||
fi
|
||||
-$(AT)if [ "$(ARB_SOLIB)" -eq "1" ]; then \
|
||||
$(LDCONFIG) -n "$(CURDIR)"; \
|
||||
fi
|
||||
ln -sf "$(ARB_LIB)" "$(ARB_LIBNAME)"; \
|
||||
|
||||
libarb.a: $(OBJS) $(LIB_SOURCES) $(EXT_SOURCES) $(HEADERS) $(EXT_HEADERS) | build build/interfaces
|
||||
$(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir); BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) static || exit $$?;))
|
||||
|
@ -156,10 +162,11 @@ else
|
|||
endif
|
||||
|
||||
install: library
|
||||
mkdir -p $(DESTDIR)$(PREFIX)/lib
|
||||
mkdir -p $(DESTDIR)$(PREFIX)/$(LIBDIR)
|
||||
mkdir -p $(DESTDIR)$(PREFIX)/include
|
||||
$(AT)if [ "$(ARB_SHARED)" -eq "1" ]; then \
|
||||
cp $(ARB_LIB) $(DESTDIR)$(PREFIX)/lib; \
|
||||
cp $(ARB_LIB) "$(DESTDIR)$(PREFIX)/$(LIBDIR)"; \
|
||||
cp -a $(shell ls $(ARB_LIBNAME)*) "$(DESTDIR)$(PREFIX)/$(LIBDIR)"; \
|
||||
fi
|
||||
$(AT)if [ "$(ARB_STATIC)" -eq "1" ]; then \
|
||||
cp libarb.a $(DESTDIR)$(PREFIX)/lib; \
|
||||
|
|
44
configure
vendored
44
configure
vendored
|
@ -5,6 +5,14 @@
|
|||
# (C) 2012, William Hart, Jean-Pierre Flori, Thomas DuBuisson
|
||||
# (C) 2012, Jan Engelhardt
|
||||
|
||||
# soname version
|
||||
#
|
||||
# arb => soname
|
||||
# 2.7.0 => 0.0.0
|
||||
ARB_MAJOR=0
|
||||
ARB_MINOR=0
|
||||
ARB_PATCH=0
|
||||
|
||||
PREFIX="/usr/local"
|
||||
GMP_DIR="/usr/local"
|
||||
MPFR_DIR="/usr/local"
|
||||
|
@ -406,19 +414,42 @@ echo "Configuring...${MACHINE}-${OS}"
|
|||
|
||||
#name for ARB shared library
|
||||
|
||||
ARB_SOLIB=0
|
||||
if [ -z "$ARB_LIB" ]; then
|
||||
case "$OS" in
|
||||
Darwin)
|
||||
ARB_LIB="libarb.dylib"
|
||||
EXTRA_SHARED_FLAGS="-install_name $PREFIX/lib/$ARB_LIB";;
|
||||
ARB_LIBNAME="libarb.dylib"
|
||||
ARB_LIB="libarb-$ARB_MAJOR.$ARB_MINOR.$ARB_PATCH.dylib"
|
||||
EXTRA_SHARED_FLAGS="-install_name $PREFIX/lib/$ARB_LIB -compatibility_version $ARB_MAJOR.$ARB_MINOR -current_version $ARB_MAJOR.$ARB_MINOR.$ARB_PATCH";;
|
||||
CYGWIN* | MINGW*)
|
||||
ARB_LIB="libarb.dll";;
|
||||
ARB_LIBNAME="libarb.dll"
|
||||
ARB_LIB="libarb-$ARB_MAJOR.dll"
|
||||
EXTRA_SHARED_FLAGS="-static-libgcc -shared -Wl,--export-all-symbols -Wl,-soname,libarb-$ARB_MAJOR.dll.$ARB_MINOR.$ARB_PATCH";;
|
||||
*)
|
||||
ARB_LIB="libarb.so"
|
||||
EXTRA_SHARED_FLAGS="-Wl,-rpath,$GMP_LIB_DIR -Wl,-rpath,$MPFR_LIB_DIR -Wl,-rpath,$FLINT_LIB_DIR";;
|
||||
ARB_LIBNAME="libarb.so"
|
||||
ARB_LIB="libarb.so.$ARB_MAJOR.$ARB_MINOR.$ARB_PATCH"
|
||||
EXTRA_SHARED_FLAGS="-Wl,-soname,libarb.so.$ARB_MAJOR"
|
||||
ARB_SOLIB=1;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# sometimes LDCONFIG is not to be found in the path. Look at some common places.
|
||||
case "$OS" in
|
||||
MINGW*|CYGWIN*|Darwin)
|
||||
LDCONFIG="true";;
|
||||
*)
|
||||
if [ -z "$LDCONFIG" ]; then
|
||||
LDCONFIG="true"
|
||||
if [ "$ARB_SOLIB" = "1" ]; then
|
||||
if command -v ldconfig > /dev/null; then
|
||||
LDCONFIG="ldconfig"
|
||||
elif [ -x /sbin/ldconfig ]; then
|
||||
LDCONFIG="/sbin/ldconfig"
|
||||
fi
|
||||
fi
|
||||
fi;;
|
||||
esac
|
||||
|
||||
#extension for executables
|
||||
|
||||
if [ -z "$EXEEXT" ]; then
|
||||
|
@ -615,6 +646,8 @@ echo "" >> Makefile
|
|||
echo "ARB_STATIC=$STATIC" >> Makefile
|
||||
echo "ARB_SHARED=$SHARED" >> Makefile
|
||||
echo "ARB_LIB=$ARB_LIB" >> Makefile
|
||||
echo "ARB_LIBNAME=$ARB_LIBNAME" >> Makefile
|
||||
echo "ARB_SOLIB=$ARB_SOLIB" >> Makefile
|
||||
echo "EXEEXT=$EXEEXT" >> Makefile
|
||||
echo "PREFIX=$PREFIX" >> Makefile
|
||||
echo "" >> Makefile
|
||||
|
@ -627,6 +660,7 @@ echo "" >> Makefile
|
|||
echo "CC=$CC" >> Makefile
|
||||
echo "CXX=$CXX" >> Makefile
|
||||
echo "AR=$AR" >> Makefile
|
||||
echo "LDCONFIG=$LDCONFIG" >> Makefile
|
||||
echo "" >> Makefile
|
||||
echo "CFLAGS=$CFLAGS" >> Makefile
|
||||
echo "ABI_FLAG=$ABI_FLAG" >> Makefile
|
||||
|
|
Loading…
Add table
Reference in a new issue