btrfs-progs: build: add --disable-shared and --disable-static
The build system mentioned in the previous commit builds libraries in both PIC and non-PIC mode. Shared libraries don't work in PIC mode, so it expects a --disable-shared configure option, which most open source libraries using autoconf have. Let's add it, too. Signed-off-by: Omar Sandoval <osandov@fb.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
996a07c602
commit
a4770b0a01
17
Makefile
17
Makefile
|
@ -274,6 +274,13 @@ libs_shared = libbtrfs.so.0.1 libbtrfsutil.so.$(libbtrfsutil_version)
|
||||||
libs_static = libbtrfs.a libbtrfsutil.a
|
libs_static = libbtrfs.a libbtrfsutil.a
|
||||||
libs = $(libs_shared) $(libs_static)
|
libs = $(libs_shared) $(libs_static)
|
||||||
lib_links = libbtrfs.so.0 libbtrfs.so libbtrfsutil.so.$(libbtrfsutil_major) libbtrfsutil.so
|
lib_links = libbtrfs.so.0 libbtrfs.so libbtrfsutil.so.$(libbtrfsutil_major) libbtrfsutil.so
|
||||||
|
libs_build =
|
||||||
|
ifeq ($(BUILD_SHARED_LIBRARIES),1)
|
||||||
|
libs_build += $(libs_shared) $(lib_links)
|
||||||
|
endif
|
||||||
|
ifeq ($(BUILD_STATIC_LIBRARIES),1)
|
||||||
|
libs_build += $(libs_static)
|
||||||
|
endif
|
||||||
|
|
||||||
# make C=1 to enable sparse
|
# make C=1 to enable sparse
|
||||||
ifdef C
|
ifdef C
|
||||||
|
@ -310,7 +317,7 @@ endif
|
||||||
$(Q)$(CC) $(STATIC_CFLAGS) -c $< -o $@ $($(subst -,_,$(@:%.static.o=%)-cflags)) \
|
$(Q)$(CC) $(STATIC_CFLAGS) -c $< -o $@ $($(subst -,_,$(@:%.static.o=%)-cflags)) \
|
||||||
$($(subst -,_,btrfs-$(@:%/$(notdir $@)=%)-cflags))
|
$($(subst -,_,btrfs-$(@:%/$(notdir $@)=%)-cflags))
|
||||||
|
|
||||||
all: $(progs_build) $(libs) $(lib_links) $(BUILDDIRS)
|
all: $(progs_build) $(libs_build) $(BUILDDIRS)
|
||||||
ifeq ($(PYTHON_BINDINGS),1)
|
ifeq ($(PYTHON_BINDINGS),1)
|
||||||
all: libbtrfsutil_python
|
all: libbtrfsutil_python
|
||||||
endif
|
endif
|
||||||
|
@ -634,7 +641,7 @@ $(CLEANDIRS):
|
||||||
@echo "Cleaning $(patsubst clean-%,%,$@)"
|
@echo "Cleaning $(patsubst clean-%,%,$@)"
|
||||||
$(Q)$(MAKE) $(MAKEOPTS) -C $(patsubst clean-%,%,$@) clean
|
$(Q)$(MAKE) $(MAKEOPTS) -C $(patsubst clean-%,%,$@) clean
|
||||||
|
|
||||||
install: $(libs) $(progs_install) $(INSTALLDIRS)
|
install: $(libs_build) $(progs_install) $(INSTALLDIRS)
|
||||||
ifeq ($(BUILD_PROGRAMS),1)
|
ifeq ($(BUILD_PROGRAMS),1)
|
||||||
$(INSTALL) -m755 -d $(DESTDIR)$(bindir)
|
$(INSTALL) -m755 -d $(DESTDIR)$(bindir)
|
||||||
$(INSTALL) $(progs_install) $(DESTDIR)$(bindir)
|
$(INSTALL) $(progs_install) $(DESTDIR)$(bindir)
|
||||||
|
@ -646,12 +653,16 @@ ifneq ($(udevdir),)
|
||||||
$(INSTALL) -m644 $(udev_rules) $(DESTDIR)$(udevruledir)
|
$(INSTALL) -m644 $(udev_rules) $(DESTDIR)$(udevruledir)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
ifneq ($(libs_build),)
|
||||||
$(INSTALL) -m755 -d $(DESTDIR)$(libdir)
|
$(INSTALL) -m755 -d $(DESTDIR)$(libdir)
|
||||||
$(INSTALL) $(libs) $(DESTDIR)$(libdir)
|
$(INSTALL) $(libs_build) $(DESTDIR)$(libdir)
|
||||||
|
ifeq ($(BUILD_SHARED_LIBRARIES),1)
|
||||||
cp -d $(lib_links) $(DESTDIR)$(libdir)
|
cp -d $(lib_links) $(DESTDIR)$(libdir)
|
||||||
|
endif
|
||||||
$(INSTALL) -m755 -d $(DESTDIR)$(incdir)/btrfs
|
$(INSTALL) -m755 -d $(DESTDIR)$(incdir)/btrfs
|
||||||
$(INSTALL) -m644 $(libbtrfs_headers) $(DESTDIR)$(incdir)/btrfs
|
$(INSTALL) -m644 $(libbtrfs_headers) $(DESTDIR)$(incdir)/btrfs
|
||||||
$(INSTALL) -m644 libbtrfsutil/btrfsutil.h $(DESTDIR)$(incdir)
|
$(INSTALL) -m644 libbtrfsutil/btrfsutil.h $(DESTDIR)$(incdir)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(PYTHON_BINDINGS),1)
|
ifeq ($(PYTHON_BINDINGS),1)
|
||||||
install_python: libbtrfsutil_python
|
install_python: libbtrfsutil_python
|
||||||
|
|
|
@ -13,6 +13,8 @@ INSTALL = @INSTALL@
|
||||||
DISABLE_DOCUMENTATION = @DISABLE_DOCUMENTATION@
|
DISABLE_DOCUMENTATION = @DISABLE_DOCUMENTATION@
|
||||||
DISABLE_BTRFSCONVERT = @DISABLE_BTRFSCONVERT@
|
DISABLE_BTRFSCONVERT = @DISABLE_BTRFSCONVERT@
|
||||||
BUILD_PROGRAMS = @BUILD_PROGRAMS@
|
BUILD_PROGRAMS = @BUILD_PROGRAMS@
|
||||||
|
BUILD_SHARED_LIBRARIES = @BUILD_SHARED_LIBRARIES@
|
||||||
|
BUILD_STATIC_LIBRARIES = @BUILD_STATIC_LIBRARIES@
|
||||||
BTRFSCONVERT_EXT2 = @BTRFSCONVERT_EXT2@
|
BTRFSCONVERT_EXT2 = @BTRFSCONVERT_EXT2@
|
||||||
BTRFSCONVERT_REISERFS = @BTRFSCONVERT_REISERFS@
|
BTRFSCONVERT_REISERFS = @BTRFSCONVERT_REISERFS@
|
||||||
BTRFSRESTORE_ZSTD = @BTRFSRESTORE_ZSTD@
|
BTRFSRESTORE_ZSTD = @BTRFSRESTORE_ZSTD@
|
||||||
|
|
18
configure.ac
18
configure.ac
|
@ -125,6 +125,20 @@ AC_ARG_ENABLE([programs],
|
||||||
AS_IF([test "x$enable_programs" = xyes], [BUILD_PROGRAMS=1], [BUILD_PROGRAMS=0])
|
AS_IF([test "x$enable_programs" = xyes], [BUILD_PROGRAMS=1], [BUILD_PROGRAMS=0])
|
||||||
AC_SUBST([BUILD_PROGRAMS])
|
AC_SUBST([BUILD_PROGRAMS])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE([shared],
|
||||||
|
AS_HELP_STRING([--disable-shared], [do not build shared libraries]),
|
||||||
|
[], [enable_shared=yes]
|
||||||
|
)
|
||||||
|
AS_IF([test "x$enable_shared" = xyes], [BUILD_SHARED_LIBRARIES=1], [BUILD_SHARED_LIBRARIES=0])
|
||||||
|
AC_SUBST([BUILD_SHARED_LIBRARIES])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE([static],
|
||||||
|
AS_HELP_STRING([--disable-static], [do not build static libraries]),
|
||||||
|
[], [enable_static=yes]
|
||||||
|
)
|
||||||
|
AS_IF([test "x$enable_static" = xyes], [BUILD_STATIC_LIBRARIES=1], [BUILD_STATIC_LIBRARIES=0])
|
||||||
|
AC_SUBST([BUILD_STATIC_LIBRARIES])
|
||||||
|
|
||||||
AC_ARG_ENABLE([convert],
|
AC_ARG_ENABLE([convert],
|
||||||
AS_HELP_STRING([--disable-convert], [do not build btrfs-convert]),
|
AS_HELP_STRING([--disable-convert], [do not build btrfs-convert]),
|
||||||
[], [enable_convert=$enable_programs]
|
[], [enable_convert=$enable_programs]
|
||||||
|
@ -222,7 +236,7 @@ AC_SUBST(BTRFSRESTORE_ZSTD)
|
||||||
|
|
||||||
AC_ARG_ENABLE([python],
|
AC_ARG_ENABLE([python],
|
||||||
AS_HELP_STRING([--disable-python], [do not build libbtrfsutil Python bindings]),
|
AS_HELP_STRING([--disable-python], [do not build libbtrfsutil Python bindings]),
|
||||||
[], [enable_python=yes]
|
[], [enable_python=$enable_shared]
|
||||||
)
|
)
|
||||||
|
|
||||||
if test "x$enable_python" = xyes; then
|
if test "x$enable_python" = xyes; then
|
||||||
|
@ -285,6 +299,8 @@ AC_MSG_RESULT([
|
||||||
ldflags: ${LDFLAGS}
|
ldflags: ${LDFLAGS}
|
||||||
|
|
||||||
programs: ${enable_programs}
|
programs: ${enable_programs}
|
||||||
|
shared libraries: ${enable_shared}
|
||||||
|
static libraries: ${enable_static}
|
||||||
documentation: ${enable_documentation}
|
documentation: ${enable_documentation}
|
||||||
doc generator: ${ASCIIDOC_TOOL}
|
doc generator: ${ASCIIDOC_TOOL}
|
||||||
backtrace support: ${enable_backtrace}
|
backtrace support: ${enable_backtrace}
|
||||||
|
|
Loading…
Reference in New Issue