]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/blobdiff - include/builddefs.in
build: Add fls check into autoconf
[thirdparty/xfsprogs-dev.git] / include / builddefs.in
index 56502c49132b41b14ab610f0edbb7162554db00d..885195642c63206e4ca1083a541709605d3a6241 100644 (file)
@@ -1,33 +1,18 @@
 #
-# Copyright (c) 2000 Silicon Graphics, Inc.  All Rights Reserved.
-# 
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of version 2 of the GNU General Public License as
+# Copyright (c) 2004-2006 Silicon Graphics, Inc.
+# All Rights Reserved.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
 # published by the Free Software Foundation.
-# 
+#
 # This program is distributed in the hope that it would be useful, but
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# 
-# Further, this software is distributed without any warranty that it is
-# free of the rightful claim of any third person regarding infringement
-# or the like.  Any license provided herein, whether implied or
-# otherwise, applies only to this software file.  Patent licenses, if
-# any, provided herein do not apply to combinations of this program with
-# other software, or any other product whatsoever.
-# 
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write the Free Software Foundation, Inc., 59
-# Temple Place - Suite 330, Boston MA 02111-1307, USA.
-# 
-# Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
-# Mountain View, CA  94043, or:
-# 
-# http://www.sgi.com 
-# 
-# For further information regarding this notice, see: 
-# 
-# http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write the Free Software Foundation,
+# Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 #
 # @configure_input@
 #
@@ -38,174 +23,134 @@ _BUILDDEFS_INCLUDED_ = 1
 DEBUG = @debug_build@
 OPTIMIZER = @opt_build@
 MALLOCLIB = @malloc_lib@
+LOADERFLAGS = @LDFLAGS@
+LTLDFLAGS = @LDFLAGS@
+CFLAGS = @CFLAGS@
 
+LIBRT = @librt@
 LIBUUID = @libuuid@
+LIBPTHREAD = @libpthread@
+LIBTERMCAP = @libtermcap@
+LIBEDITLINE = @libeditline@
+LIBREADLINE = @libreadline@
+LIBBLKID = @libblkid@
 LIBXFS = $(TOPDIR)/libxfs/libxfs.la
-LIBDISK = $(TOPDIR)/libdisk/libdisk.la
+LIBXCMD = $(TOPDIR)/libxcmd/libxcmd.la
+LIBXLOG = $(TOPDIR)/libxlog/libxlog.la
 LIBHANDLE = $(TOPDIR)/libhandle/libhandle.la
 
-LIBLVM = @liblvm@
-USELVM = -DHAVE_LIBLVM=@have_liblvm@
-DK_INC_DIR = @dk_inc_dir@
-
-PKG_NAME = @pkg_name@
-PKG_RELEASE = @pkg_release@
-PKG_VERSION = @pkg_version@
-PKG_DISTRIBUTION = @pkg_distribution@
-PKG_BUILDER = @pkg_builder@
-PKG_BIN_DIR = @pkg_bin_dir@
-PKG_LIB_DIR = @pkg_lib_dir@
-PKG_SBIN_DIR = @pkg_sbin_dir@
-PKG_SLIB_DIR = @pkg_slib_dir@
-PKG_INC_DIR = @pkg_inc_dir@
-PKG_MAN_DIR = @pkg_man_dir@
-PKG_DOC_DIR = @pkg_doc_dir@
-
-CC     = @cc@
-LD     = @ld@
-AWK    = @awk@
-SED    = @sed@
-MAKE   = @make@
-ECHO   = @echo@
-LN_S   = @LN_S@
-ZIP    = @zip@
-TAR    = @tar@
-RPM    = @rpm@
-
-RPM_VERSION = @rpm_version@
-HAVE_ZIPPED_MANPAGES = @have_zipped_manpages@
-MAKEDEPEND = @makedepend@
+PKG_NAME       = @pkg_name@
+PKG_USER       = @pkg_user@
+PKG_GROUP      = @pkg_group@
+PKG_RELEASE    = @pkg_release@
+PKG_VERSION    = @pkg_version@
+PKG_PLATFORM   = @pkg_platform@
+PKG_DISTRIBUTION= @pkg_distribution@
+
+prefix         = @prefix@
+exec_prefix    = @exec_prefix@
+datarootdir    = @datarootdir@
+top_builddir   = @top_builddir@
+
+PKG_SBIN_DIR   = @sbindir@
+PKG_ROOT_SBIN_DIR = @root_sbindir@
+PKG_ROOT_LIB_DIR= @root_libdir@@libdirsuffix@
+PKG_LIB_DIR    = @libdir@@libdirsuffix@
+PKG_INC_DIR    = @includedir@/xfs
+DK_INC_DIR     = @includedir@/disk
+PKG_MAN_DIR    = @mandir@
+PKG_DOC_DIR    = @datadir@/doc/@pkg_name@
+PKG_LOCALE_DIR = @datadir@/locale
+
+CC             = @cc@
+BUILD_CC       = @BUILD_CC@
+AWK            = @awk@
+SED            = @sed@
+TAR            = @tar@
+ZIP            = @zip@
+MAKE           = @make@
+ECHO           = @echo@
+SORT           = @sort@
+LN_S           = @LN_S@
+SHELL          = @SHELL@
+LIBTOOL                = @LIBTOOL@
+MAKEDEPEND     = @makedepend@
+
+MSGFMT         = @msgfmt@
+MSGMERGE       = @msgmerge@
+XGETTEXT       = @xgettext@
+LOCALIZED_FILES        = @LOCALIZED_FILES@
+
+RPM            = @rpm@
+RPMBUILD       = @rpmbuild@
+RPM_VERSION    = @rpm_version@
+
+ENABLE_SHARED  = @enable_shared@
+ENABLE_GETTEXT = @enable_gettext@
+ENABLE_EDITLINE        = @enable_editline@
+ENABLE_READLINE        = @enable_readline@
 
-LIBTOOL        = @LIBTOOL@
-ENABLE_SHARED = @enable_shared@
+HAVE_ZIPPED_MANPAGES = @have_zipped_manpages@
 
-#
-# end configure'd section
-
-
-BUILDRULES = $(TOPDIR)/include/buildrules
-
-# LCFLAGS, LLDFLAGS, LLDLIBS, LSRCFILES and LDIRT may be specified in
-# user Makefiles. Note: LSRCFILES is anything other than Makefile, $(CFILES)
-# $(CXXFILES), or $(HFILES) and is used to construct the manifest list
-# during the "dist" phase (packaging).
-
-CFLAGS += -O1 $(OPTIMIZER) $(DEBUG) -funsigned-char -Wall $(LCFLAGS) \
-       -I$(TOPDIR)/include '-DVERSION="$(PKG_VERSION)"' -D_GNU_SOURCE \
-       -D_FILE_OFFSET_BITS=64 -DXFS_BIG_FILES=1 -DXFS_BIG_FILESYSTEMS=1
-
-LDFLAGS = $(LLDFLAGS)
-LDLIBS = $(LLDLIBS) $(MALLOCLIB)
-
-MAKEOPTS = --no-print-directory
-SRCFILES = Makefile $(HFILES) $(CFILES) $(LSRCFILES) $(LFILES) $(YFILES)
-DIRT = $(LDIRT) dep dep.bak $(OBJECTS) $(LTCOMMAND) $(LTLIBRARY) *.[1-9].gz
-
-OBJECTS = $(ASFILES:.s=.o) \
-          $(CFILES:.c=.o) \
-          $(LFILES:.l=.o) \
-          $(YFILES:%.y=%.tab.o)
-
-INSTALL        = $(TOPDIR)/install-sh -o root -g root
-
-SHELL = /bin/sh
-IMAGES_DIR = $(TOPDIR)/all-images
-DIST_DIR = $(TOPDIR)/dist
-
-CCF    = $(CC) $(CFLAGS)
-MAKEF  = $(MAKE) $(MAKEOPTS)
-CXXF   = $(CXX) $(CXXFLAGS)
-LDF    = $(LD) $(LDFLAGS)
-
-# For libtool.  Pieces from Automake, slightly modified.
-top_builddir = $(TOPDIR)
-DIRT += $(LTOBJECTS) $(LTLIBRARY)
-LTLINK = $(LIBTOOL) --mode=link $(CC)
-LTEXEC = $(LIBTOOL) --mode=execute
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CCF) -D_REENTRANT
-LTVERSION = $(LT_CURRENT).$(LT_REVISION).$(LT_AGE)
-LTOBJECTS = $(OBJECTS:.o=.lo)
-ifeq ($(ENABLE_SHARED),yes)
-LTLDFLAGS += -rpath $(PKG_LIB_DIR) 
-LTLDFLAGS += -version-info $(subst .,:,$(LTVERSION))
+HAVE_FADVISE = @have_fadvise@
+HAVE_MADVISE = @have_madvise@
+HAVE_MINCORE = @have_mincore@
+HAVE_SENDFILE = @have_sendfile@
+HAVE_GETMNTENT = @have_getmntent@
+HAVE_GETMNTINFO = @have_getmntinfo@
+HAVE_FALLOCATE = @have_fallocate@
+HAVE_FIEMAP = @have_fiemap@
+HAVE_PREADV = @have_preadv@
+HAVE_SYNC_FILE_RANGE = @have_sync_file_range@
+HAVE_READDIR = @have_readdir@
+HAVE_MNTENT = @have_mntent@
+HAVE_FLS = @have_fls@
+
+GCCFLAGS = -funsigned-char -fno-strict-aliasing -Wall 
+#         -Wbitwise -Wno-transparent-union -Wno-old-initializer -Wno-decl
+
+ifeq ($(PKG_PLATFORM),linux)
+PCFLAGS = -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 $(GCCFLAGS)
+ifeq ($(HAVE_UMODE_T),yes)
+PCFLAGS += -DHAVE_UMODE_T
+endif
+DEPENDFLAGS = -D__linux__
 endif
-LIBNAME = $(basename $(LTLIBRARY))
-
-ifeq ($(ENABLE_SHARED),yes)
-INSTALL_LTLIB = \
-       cd $(TOPDIR)/$(LIBNAME)/.libs; \
-       ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
-       ../$(INSTALL) -m 644 $(LIBNAME).so.$(LTVERSION) $(PKG_LIB_DIR); \
-       test "$(PKG_DISTRIBUTION)" = debian || \
-       ../$(INSTALL) -S $(LIBNAME).so.$(LTVERSION) $(PKG_LIB_DIR)/$(LIBNAME).so.$(LT_CURRENT)
+ifeq ($(PKG_PLATFORM),gnukfreebsd)
+PCFLAGS = -D_GNU_SOURCE $(GCCFLAGS)
 endif
+ifeq ($(PKG_PLATFORM),darwin)
+PCFLAGS = $(GCCFLAGS)
+DEPENDFLAGS = -D__APPLE__
+endif
+ifeq ($(PKG_PLATFORM),irix)
+PLDLIBS = -ldisk -lgen
+DEPENDFLAGS = -D__sgi__
+endif
+ifeq ($(PKG_PLATFORM),freebsd)
+PLDLIBS = -L/usr/local/lib -lintl
+PCFLAGS = -I/usr/local/include $(GCCFLAGS)
+DEPENDFLAGS = -D__FreeBSD__
+endif
+ifeq ($(HAVE_FLS),yes)
+LCFLAGS+= -DHAVE_FLS
+endif
+ifeq ($(HAVE_MNTENT),yes)
+PCFLAGS+= -DHAVE_MNTENT
+endif
+
+GCFLAGS = $(OPTIMIZER) $(DEBUG) \
+         -DVERSION=\"$(PKG_VERSION)\" -DLOCALEDIR=\"$(PKG_LOCALE_DIR)\"  \
+         -DPACKAGE=\"$(PKG_NAME)\" -I$(TOPDIR)/include -I$(TOPDIR)/libxfs
 
-ifeq ($(ENABLE_SHARED),yes)
-INSTALL_LTLIB_DEV = \
-       cd $(TOPDIR)/$(LIBNAME)/.libs; \
-       ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
-       ../$(INSTALL) -m 644 $(LIBNAME).a $(PKG_LIB_DIR); \
-       ../$(INSTALL) -S $(LIBNAME).so.$(LT_CURRENT) $(PKG_LIB_DIR)/$(LIBNAME).so
-else
-INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
+ifeq ($(ENABLE_GETTEXT),yes)
+GCFLAGS += -DENABLE_GETTEXT
 endif
 
-INSTALL_LTLIB_STATIC = \
-       cd $(TOPDIR)/$(LIBNAME)/.libs; \
-       ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
-       ../$(INSTALL) -m 644 $(LIBNAME).a $(PKG_LIB_DIR)
-
-INSTALL_MAN = \
-    @for d in $(MAN_PAGES); do \
-       first=true; \
-       for m in `$(AWK) '/^\.SH NAME/ {ok=1; next} ok {print; exit}' $$d \
-       | sed -e 's/,/ /g' -e 's/\\-.*//' -e 's/\\\f[0-9]//g' -e 's/  / /g;q'`; \
-       do \
-           [ -z "$$m" -o "$$m" = "\\" ] && continue; \
-           t=$(MAN_DEST)/$$m.$(MAN_SECTION); \
-           if $$first; then \
-               if $(HAVE_ZIPPED_MANPAGES); then \
-                   $(ZIP) --best -c $$d > $$d.gz; _sfx=.gz; \
-               fi; \
-               u=$$m.$(MAN_SECTION)$$_sfx; \
-               echo $(INSTALL) -m 644 $${d}$$_sfx $${t}$$_sfx; \
-               $(INSTALL) -m 644 $${d}$$_sfx $${t}$$_sfx; \
-           else \
-               echo $(INSTALL) -S $$u $${t}$$_sfx; \
-               $(INSTALL) -S $$u $${t}$$_sfx; \
-           fi; \
-           first=false; \
-       done; \
-    done
-
-SUBDIRS_MAKERULE = \
-       @for d in $(SUBDIRS) ""; do \
-           if test -d "$$d" -a ! -z "$$d"; then \
-               $(ECHO) === $$d ===; \
-               $(MAKEF) -C $$d $@ || exit $$?; \
-           fi; \
-       done
-
-MAN_MAKERULE = \
-    @for f in *.[12345678] ""; do \
-       if test ! -z "$$f"; then \
-           $(ZIP) --best -c < $$f > $$f.gz; \
-       fi; \
-    done
-
-DIST_MAKERULE = \
-       $(MAKEF) -C build dist
-
-SOURCE_MAKERULE = \
-       @test -z "$$DIR" && DIR="."; \
-       for f in $(SRCFILES) ""; do \
-           if test ! -z "$$f"; then $(ECHO) $$DIR/$$f; fi;\
-       done; \
-       for d in `echo $(SUBDIRS)` ; do \
-           if test -d "$$d" -a ! -z "$$d"; then \
-               $(MAKEF) DIR=$$DIR/$$d -C $$d $@ || exit $$?; \
-           fi; \
-       done
+# First, Global, Platform, Local CFLAGS
+CFLAGS += $(FCFLAGS) $(GCFLAGS) $(PCFLAGS) $(LCFLAGS)
+
+include $(TOPDIR)/include/buildmacros
 
 endif