]> mj.ucw.cz Git - pciutils.git/blobdiff - lib/configure
sysfs: Cleaned up caching of file descriptors.
[pciutils.git] / lib / configure
index 20720230189bfa2398aec8090fe4a9e87e175f17..5e4d97fb9b1af34de79d941ef3582b67b3a61f30 100755 (executable)
@@ -32,21 +32,28 @@ if [ -z "$HOST" ] ; then
        then
                sys=freebsd
        fi
+       if [ "$sys" = "CYGWIN_NT-5.1" ]
+       then
+               sys=cygwin
+       fi
        HOST=${3:-$cpu-$sys}
 fi
+[ -n "$RELEASE" ] && rel="${RELEASE}"
 # CAVEAT: tr on Solaris is a bit weird and the extra [] is otherwise harmless.
-host=`echo $HOST | sed 's/^\([^-]*\)-\([^-]*\)$/\1--\2/' | tr '[A-Z]' '[a-z]'`
+host=`echo $HOST | sed -e 's/^\([^-]*\)-\([^-]*\)-\([^-]*\)-\([^-]*\)$/\1-\3/' -e 's/^\([^-]*\)-\([^-]*\)$/\1--\2/' | tr '[A-Z]' '[a-z]'`
 cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
 sys=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo " $host $rel"
+echo " $host $rel $cpu $sys"
 
 c=config.h
 m=config.mk
-echo >$c "#define PCI_ARCH_`echo $cpu | tr '[a-z]' '[A-Z]'`"
+echo >$c '#define PCI_CONFIG_H'
+echo >>$c "#define PCI_ARCH_`echo $cpu | tr '[a-z]' '[A-Z]'`"
 echo >>$c "#define PCI_OS_`echo $sys | tr '[a-z]' '[A-Z]'`"
-echo >$m 'LDLIBS='
+echo >$m 'WITH_LIBS='
 
 echo_n "Looking for access methods..."
+LIBRESOLV=-lresolv
 
 case $sys in
        linux*)
@@ -57,16 +64,15 @@ case $sys in
                echo >>$c '#define PCI_PATH_PROC_BUS_PCI "/proc/bus/pci"'
                echo >>$c '#define PCI_PATH_SYS_BUS_PCI "/sys/bus/pci"'
                case $cpu in
-                               i386|x86_64)    echo_n " i386-ports"
+                               i?86|x86_64)    echo_n " i386-ports"
                                                echo >>$c '#define PCI_HAVE_PM_INTEL_CONF'
                                                ;;
                esac
                echo >>$c '#define PCI_HAVE_64BIT_ADDRESS'
-               echo >>$c '#define PCI_USE_DNS'
                ;;
        sunos)
                case $cpu in
-                               i386)           echo_n " i386-ports"
+                               i?86)           echo_n " i386-ports"
                                                echo >>$c "#define PCI_HAVE_PM_INTEL_CONF"
                                                ;;
                                *)
@@ -80,11 +86,13 @@ case $sys in
                echo_n " fbsd-device"
                echo >>$c '#define PCI_HAVE_PM_FBSD_DEVICE'
                echo >>$c '#define PCI_PATH_FBSD_DEVICE "/dev/pci"'
+               LIBRESOLV=
                ;;
         openbsd)
                echo_n " obsd-device"
                echo >>$c '#define PCI_HAVE_PM_OBSD_DEVICE'
                echo >>$c '#define PCI_PATH_OBSD_DEVICE "/dev/pci"'
+               LIBRESOLV=
                ;;
        aix)
                echo_n " aix-device"
@@ -97,13 +105,19 @@ case $sys in
                echo_n " nbsd-libpci"
                echo >>$c '#define PCI_HAVE_PM_NBSD_LIBPCI'
                echo >>$c '#define PCI_PATH_NBSD_DEVICE "/dev/pci0"'
-               echo >>$m 'PCILIB=lib/libpciutils.a'
-               echo >>$m 'LDLIBS+=-lpci'
+               echo >>$m 'LIBNAME=libpciutils'
+               echo >>$m 'WITH_LIBS+=-lpci'
+               LIBRESOLV=
                ;;
        gnu)
                echo_n " i386-ports"
                echo >>$c '#define PCI_HAVE_PM_INTEL_CONF'
                ;;
+       cygwin)
+               echo_n " i386-ports"
+               echo >>$c '#define PCI_HAVE_PM_INTEL_CONF'
+               echo >>$m 'WITH_LIBS+=-lioperm'
+               ;;
         *)
                echo " Unfortunately, your OS is not supported by the PCI Library"
                exit 1
@@ -128,7 +142,7 @@ if [ "$ZLIB" = yes ] ; then
        echo >>$c '#define PCI_COMPRESSED_IDS'
        echo >>$c '#define PCI_IDS "pci.ids.gz"'
        echo >>$m 'LIBZ=-lz'
-       echo >>$m 'LDLIBS+=$(LIBZ)'
+       echo >>$m 'WITH_LIBS+=$(LIBZ)'
 else
        echo >>$c '#define PCI_IDS "pci.ids"'
 fi
@@ -147,9 +161,26 @@ else
 fi
 if [ "$DNS" = yes ] ; then
        echo >>$c "#define PCI_USE_DNS"
-       echo >>$c "#define PCI_ID_DOMAIN \"pci-id.ucw.cz\""
-       echo >>$m 'LDLIBS+=-lresolv'
+       echo >>$c "#define PCI_ID_DOMAIN \"pci.id.ucw.cz\""
+       echo >>$m "WITH_LIBS+=$LIBRESOLV"
+fi
+
+echo "Checking whether to build a shared library... $SHARED (set manually)"
+if [ "$SHARED" = no ] ; then
+       echo >>$m 'PCILIB=$(LIBNAME).a'
+       echo >>$m 'LDLIBS=$(WITH_LIBS)'
+       echo >>$m 'LIB_LDLIBS='
+else
+       echo >>$m 'PCILIB=$(LIBNAME).so.$(VERSION)'
+       # We link the dependencies _to_ the library, so we do not need explicit deps in .pc
+       echo >>$m 'LDLIBS='
+       echo >>$m 'LIB_LDLIBS=$(WITH_LIBS)'
+       echo >>$c '#define PCI_SHARED_LIB'
+       if [ "$SHARED" = yes ] ; then
+               echo >>$m 'SONAME=-Wl,-soname,$(LIBNAME).so$(ABI_VERSION)'
+       fi
 fi
+echo >>$m 'PCILIBPC=$(LIBNAME).pc'
 
 echo >>$c "#define PCILIB_VERSION \"$VERSION\""
 sed '/"/{s/^#define \([^ ]*\) "\(.*\)"$/\1=\2/;p;d;};s/^#define \(.*\)/\1=1/' <$c >>$m