5977150
From 73db870f2453eeccb39a489c28ba2b985bb238e8 Mon Sep 17 00:00:00 2001
c17bb0a
From: Peter Lemenkov <lemenkov@gmail.com>
a1e5088
Date: Fri, 17 Sep 2010 18:58:28 +0400
5977150
Subject: [PATCH 1/8] Initial commit of autotools-related files
c17bb0a
c17bb0a
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
c17bb0a
---
5977150
 Makefile.am  | 219 +++++++++++++++++++++++++++++++++++++
5977150
 bootstrap.sh |   4 +
5977150
 configure.ac | 349 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5977150
 3 files changed, 572 insertions(+)
c17bb0a
 create mode 100644 Makefile.am
eab8405
 create mode 100755 bootstrap.sh
c17bb0a
 create mode 100644 configure.ac
c17bb0a
c17bb0a
diff --git a/Makefile.am b/Makefile.am
c17bb0a
new file mode 100644
5977150
index 0000000..5c4ee86
c17bb0a
--- /dev/null
c17bb0a
+++ b/Makefile.am
5977150
@@ -0,0 +1,219 @@
c17bb0a
+sbin_PROGRAMS = flashrom
c17bb0a
+
c17bb0a
+man_MANS = flashrom.8
c17bb0a
+
eab8405
+# FIXME use "config.h" in the future
eab8405
+DEFS += -DFLASHROM_VERSION=\"@VERSION@\"
eab8405
+
2026e4b
+if HAVE_DMIDECODE
c17bb0a
+DEFS += -DDMIDECODE_PATH=\"@DMIDECODE@\"
2026e4b
+else
2026e4b
+DEFS += -DSTANDALONE
2026e4b
+endif
2026e4b
+
c17bb0a
+
c17bb0a
+if HAVE_INTERNAL
c17bb0a
+internal_SOURCES = \
c17bb0a
+	board_enable.c \
c17bb0a
+	cbtable.c \
e6679fe
+	coreboot_tables.h \
c17bb0a
+	chipset_enable.c \
c17bb0a
+	dmi.c \
c17bb0a
+	internal.c \
c17bb0a
+	processor_enable.c
c17bb0a
+if HAVE_X86_ONLY_INTERNAL
c17bb0a
+internal_x86_only_SOURCES = \
eab8405
+	ich_descriptors.c \
e6679fe
+	ich_descriptors.h \
c17bb0a
+	ichspi.c \
bbd9bbe
+	it85spi.c \
c17bb0a
+	it87spi.c \
c17bb0a
+	mcp6x_spi.c \
c17bb0a
+	sb600spi.c \
c17bb0a
+	wbsio_spi.c
c17bb0a
+endif
c17bb0a
+DEFS += -DCONFIG_INTERNAL=1
c17bb0a
+endif
c17bb0a
+
bbd9bbe
+if HAVE_SERPROG
bbd9bbe
+serprog_SOURCES = serprog.c
bbd9bbe
+DEFS += -DCONFIG_SERPROG=1
bbd9bbe
+endif
bbd9bbe
+
eab8405
+if HAVE_LINUX_SPI
eab8405
+linux_spi_SOURCES = linux_spi.c
eab8405
+DEFS += -DCONFIG_LINUX_SPI=1
eab8405
+endif
eab8405
+
c17bb0a
+if HAVE_RAYER_SPI
c17bb0a
+rayer_spi_SOURCES = rayer_spi.c
c17bb0a
+DEFS += -DCONFIG_RAYER_SPI=1
c17bb0a
+endif
c17bb0a
+
e6679fe
+if HAVE_PONY_SPI
e6679fe
+pony_spi_SOURCES = pony_spi.c
e6679fe
+DEFS += -DCONFIG_PONY_SPI=1
e6679fe
+endif
e6679fe
+
bbd9bbe
+if HAVE_BITBANG_SPI
bbd9bbe
+bitbang_spi_SOURCES = bitbang_spi.c
bbd9bbe
+DEFS += -DCONFIG_BITBANG_SPI=1
bbd9bbe
+endif
bbd9bbe
+
c17bb0a
+if HAVE_NIC3COM
c17bb0a
+nic3com_SOURCES = nic3com.c
c17bb0a
+DEFS += -DCONFIG_NIC3COM=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_GFXNVIDIA
c17bb0a
+gfxnvidia_SOURCES = gfxnvidia.c
c17bb0a
+DEFS += -DCONFIG_GFXNVIDIA=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_SATASII
c17bb0a
+satasii_SOURCES = satasii.c
c17bb0a
+DEFS += -DCONFIG_SATASII=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_ATAHPT
c17bb0a
+atahpt_SOURCES = atahpt.c
c17bb0a
+DEFS += -DCONFIG_ATAHPT=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_FT2232_SPI
c17bb0a
+ft_2232_spi_SOURCES = ft2232_spi.c
c17bb0a
+DEFS += -DCONFIG_FT2232_SPI=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_DUMMY
c17bb0a
+dummy_SOURCES= dummyflasher.c
c17bb0a
+DEFS += -DCONFIG_DUMMY=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_DRKAISER
c17bb0a
+drkaiser_SOURCES = drkaiser.c
c17bb0a
+DEFS += -DCONFIG_DRKAISER=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_NICREALTEK
c17bb0a
+nicrealtek_SOURCES = nicrealtek.c
c17bb0a
+DEFS += -DCONFIG_NICREALTEK=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_NICNATSEMI
c17bb0a
+nicnatsemi_SOURCES = nicnatsemi.c
c17bb0a
+DEFS += -DCONFIG_NICNATSEMI=1
c17bb0a
+endif
c17bb0a
+
4a6317d
+if HAVE_NICINTEL
4a6317d
+nicintel_SOURCES = nicintel.c
4a6317d
+DEFS += -DCONFIG_NICINTEL=1
4a6317d
+endif
4a6317d
+
c17bb0a
+if HAVE_NICINTEL_SPI
4a6317d
+nicintel_spi_SOURCES = nicintel_spi.c
c17bb0a
+DEFS += -DCONFIG_NICINTEL_SPI=1
c17bb0a
+endif
c17bb0a
+
bbd9bbe
+if HAVE_GFXOGP
bbd9bbe
+gfxogp_SOURCES = ogp_spi.c
bbd9bbe
+DEFS += -DCONFIG_OGP_SPI=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_BUSPIRATE_SPI
c17bb0a
+buspirate_SOURCES = buspirate_spi.c
c17bb0a
+DEFS += -DCONFIG_BUSPIRATE_SPI=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_DEDIPROG
c17bb0a
+dediprog_SOURCES = dediprog.c
c17bb0a
+DEFS += -DCONFIG_DEDIPROG=1
c17bb0a
+endif
c17bb0a
+
bbd9bbe
+if HAVE_SATAMV
bbd9bbe
+satamv_SOURCES = satamv.c
bbd9bbe
+DEFS += -DCONFIG_SATAMV=1
bbd9bbe
+endif
bbd9bbe
+
bbd9bbe
+if HAVE_SERIAL
bbd9bbe
+serial_SOURCES = serial.c
bbd9bbe
+endif
bbd9bbe
+
c17bb0a
+if HAVE_PRINT_WIKI
c17bb0a
+print_wiki_SOURCES = print_wiki.c
c17bb0a
+DEFS += -DCONFIG_PRINT_WIKI=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+if HAVE_PCI
c17bb0a
+pci_SOURCES = pcidev.c \
c17bb0a
+	      physmap.c \
e6679fe
+	      hwaccess.c \
e6679fe
+	      hwaccess.h
eab8405
+DEFS += -DNEED_PCI=1
c17bb0a
+endif
c17bb0a
+
c17bb0a
+chip_SOURCES = 82802ab.c \
d5ca5b9
+	       a25.c \
d5ca5b9
+	       at25.c \
e6679fe
+	       chipdrivers.h \
c17bb0a
+	       flashchips.c \
e6679fe
+	       flashchips.h \
e6679fe
+	       en29lv640b.c \
c17bb0a
+	       jedec.c \
c17bb0a
+	       m29f400bt.c \
2aeb792
+	       opaque.c \
c17bb0a
+	       pm49fl00x.c \
f4ee62f
+	       sfdp.c \
c17bb0a
+	       spi.c \
e6679fe
+	       spi.h \
c17bb0a
+	       spi25.c \
c17bb0a
+	       sst_fwhub.c \
c17bb0a
+	       sst28sf040.c \
c17bb0a
+	       sst49lfxxxc.c \
c17bb0a
+	       stm50flw0x0x.c \
c17bb0a
+	       w29ee011.c \
523d4bd
+	       w39.c
c17bb0a
+
c17bb0a
+cli_SOURCES = \
c17bb0a
+	flashrom.c \
c17bb0a
+	cli_classic.c \
c17bb0a
+	cli_output.c \
c17bb0a
+	print.c
c17bb0a
+
c17bb0a
+lib_SOURCES = layout.c
c17bb0a
+
c17bb0a
+flashrom_SOURCES = \
e6679fe
+	flash.h \
c17bb0a
+	programmer.c \
e6679fe
+	programmer.h \
c17bb0a
+	udelay.c \
bbd9bbe
+	$(internal_SOURCES) \
bbd9bbe
+	$(internal_x86_only_SOURCES) \
c17bb0a
+	$(serprog_SOURCES) \
eab8405
+	$(linux_spi_SOURCES) \
c17bb0a
+	$(rayer_spi_SOURCES) \
e6679fe
+	$(pony_spi_SOURCES) \
bbd9bbe
+	$(bitbang_spi_SOURCES) \
c17bb0a
+	$(nic3com_SOURCES) \
bbd9bbe
+	$(gfxnvidia_SOURCES) \
c17bb0a
+	$(satasii_SOURCES) \
c17bb0a
+	$(atahpt_SOURCES) \
c17bb0a
+	$(ft_2232_spi_SOURCES) \
bbd9bbe
+	$(dummy_SOURCES) \
c17bb0a
+	$(drkaiser_SOURCES) \
c17bb0a
+	$(nicrealtek_SOURCES) \
c17bb0a
+	$(nicnatsemi_SOURCES) \
c17bb0a
+	$(nicintel_SOURCES) \
4a6317d
+	$(nicintel_spi_SOURCES) \
bbd9bbe
+	$(gfxogp_SOURCES) \
c17bb0a
+	$(buspirate_SOURCES) \
c17bb0a
+	$(dediprog_SOURCES) \
bbd9bbe
+	$(satamv_SOURCES) \
bbd9bbe
+	$(serial_SOURCES) \
c17bb0a
+	$(print_wiki_SOURCES) \
bbd9bbe
+	$(pci_SOURCES) \
bbd9bbe
+	$(chip_SOURCES) \
bbd9bbe
+	$(cli_SOURCES) \
bbd9bbe
+	$(lib_SOURCES)
e6679fe
+
e6679fe
+EXTRA_DIST = Documentation util
eab8405
diff --git a/bootstrap.sh b/bootstrap.sh
eab8405
new file mode 100755
f4ee62f
index 0000000..0213288
eab8405
--- /dev/null
eab8405
+++ b/bootstrap.sh
f4ee62f
@@ -0,0 +1,4 @@
eab8405
+#!/bin/sh
eab8405
+aclocal --force
eab8405
+/usr/bin/autoconf --force
eab8405
+automake --add-missing --copy --force-missing
c17bb0a
diff --git a/configure.ac b/configure.ac
c17bb0a
new file mode 100644
5977150
index 0000000..a823d5b
c17bb0a
--- /dev/null
c17bb0a
+++ b/configure.ac
5977150
@@ -0,0 +1,349 @@
5977150
+AC_INIT([flashrom], [0.9.6.1-r1596], [flashrom@flashrom.org], [flashrom], [http://www.flashrom.org/])
523d4bd
+
523d4bd
+AC_PREREQ(2.59)
c17bb0a
+
c17bb0a
+AC_CANONICAL_TARGET
c17bb0a
+
c17bb0a
+AC_CONFIG_SRCDIR([flashrom.c])
f4ee62f
+AM_INIT_AUTOMAKE([dist-bzip2 no-dist-gzip tar-ustar foreign])
c17bb0a
+
c17bb0a
+# Internal (mainboard) flashing
c17bb0a
+AC_ARG_WITH([internal],
d5ca5b9
+	    AC_HELP_STRING([--with-internal],[mainboard internal flashing support.]),
c17bb0a
+	    [internal="$withval"],[internal="yes"])
c17bb0a
+
523d4bd
+# Needs to be disabled on Windows.
523d4bd
+AC_ARG_WITH([serprog],
523d4bd
+	    AC_HELP_STRING([--with-serprog],[serprog support.]),
523d4bd
+	    [serprog="$withval"],[serprog="yes"])
523d4bd
+
523d4bd
+AC_ARG_WITH([rayer_spi],
523d4bd
+	    AC_HELP_STRING([--with-rayer-spi],[RayeR SPIPGM hardware support.]),
523d4bd
+	    [rayer_spi="$withval"],[rayer_spi="yes"])
523d4bd
+
e6679fe
+AC_ARG_WITH([pony_spi],
e6679fe
+	    AC_HELP_STRING([--with-pony-spi],[PonyProg2000 SPI hardware support.]),
e6679fe
+	    [pony_spi="$withval"],[pony_spi="yes"])
e6679fe
+
523d4bd
+AC_ARG_WITH([nic3com],
523d4bd
+	    AC_HELP_STRING([--with-nic3com],[3Com NICs support.]),
523d4bd
+	    [nic3com="$withval"],[nic3com="yes"])
523d4bd
+
523d4bd
+AC_ARG_WITH([gfxnvidia],
523d4bd
+	    AC_HELP_STRING([--with-gfxnvidia],[NVIDIA graphics cards support. Note: write and erase do not work properly.]),
523d4bd
+	    [gfxnvidia="$withval"],[gfxnvidia="yes"])
523d4bd
+
c17bb0a
+AC_ARG_WITH([satasii],
c17bb0a
+	    AC_HELP_STRING([--with-satasii],[SiI SATA controllers support.]),
bbd9bbe
+	    [satasii="$withval"],[satasii="yes"])
523d4bd
+
c17bb0a
+AC_ARG_WITH([atahpt],
c17bb0a
+	    AC_HELP_STRING([--with-atahpt],[Highpoint (HPT) ATA/RAID controller support. IMPORTANT: This code is not yet working!]),
c17bb0a
+	    [atahpt="$withval"],[atahpt="no"])
c17bb0a
+
523d4bd
+AC_ARG_WITH([ft2232_spi],
523d4bd
+	    AC_HELP_STRING([--with-ft2232-spi],[FT2232 SPI dongles support.]),
523d4bd
+	    [ft2232_spi="$withval"],[ft2232_spi="yes"])
523d4bd
+
523d4bd
+AC_ARG_WITH([dummy],
523d4bd
+	    AC_HELP_STRING([--with-dummy],[dummy flashing support.]),
523d4bd
+	    [dummy="$withval"],[dummy="yes"])
523d4bd
+
523d4bd
+AC_ARG_WITH([drkaiser],
523d4bd
+	    AC_HELP_STRING([--with-drkaiser],[Dr. Kaiser support.]),
523d4bd
+	    [drkaiser="$withval"],[drkaiser="yes"])
523d4bd
+
c17bb0a
+AC_ARG_WITH([nicrealtek],
c17bb0a
+	    AC_HELP_STRING([--with-nicrealtek],[Realtek NICs support.]),
c17bb0a
+	    [nicrealtek="$withval"],[nicrealtek="yes"])
c17bb0a
+
523d4bd
+AC_ARG_WITH([nicnatsemi],
523d4bd
+	    AC_HELP_STRING([--with-nicnatsemi],[National Semiconductor NICs support. Incomplete and untested.]),
523d4bd
+	    [nicnatsemi="$withval"],[nicnatsemi="no"])
523d4bd
+
4a6317d
+AC_ARG_WITH([nicintel],
4a6317d
+	    AC_HELP_STRING([--with-nicintel],[Intel NICs support.]),
4a6317d
+	    [nicintel="$withval"],[nicintel="yes"])
4a6317d
+
523d4bd
+AC_ARG_WITH([nicintel_spi],
523d4bd
+	    AC_HELP_STRING([--with-nicintel-spi],[SPI on Intel NICs support.]),
523d4bd
+	    [nicintel_spi="$withval"],[nicintel_spi="yes"])
523d4bd
+
523d4bd
+AC_ARG_WITH([gfxogp],
523d4bd
+	    AC_HELP_STRING([--with-gfxogp],[The Open Graphics Project graphics card support.]),
523d4bd
+	    [gfxogp="$withval"],[gfxogp="yes"])
523d4bd
+
c17bb0a
+AC_ARG_WITH([buspirate_spi],
c17bb0a
+	    AC_HELP_STRING([--with-buspirate-spi],[Bus Pirate SPI support.]),
c17bb0a
+	    [buspirate_spi="$withval"],[buspirate_spi="yes"])
523d4bd
+
c17bb0a
+AC_ARG_WITH([dediprog],
c17bb0a
+	    AC_HELP_STRING([--with-dediprog],[Dediprog SF100 support. Incomplete and untested.]),
c17bb0a
+	    [dediprog="$withval"],[dediprog="no"])
c17bb0a
+
bbd9bbe
+AC_ARG_WITH([satamv],
bbd9bbe
+	    AC_HELP_STRING([--with-satamv],[Marvell SATA controllers support.]),
bbd9bbe
+	    [satamv="$withval"],[satamv="yes"])
bbd9bbe
+
c17bb0a
+# Specific for Flashrom Wiki
c17bb0a
+AC_ARG_WITH([print_wiki],
c17bb0a
+	    AC_HELP_STRING([--with-print-wiki],[enable wiki export support. It is only useful if you have Flashrom wiki access.]),
c17bb0a
+	    [print_wiki="$withval"],[print_wiki="no"])
c17bb0a
+
a1e5088
+AC_C_BIGENDIAN(
a1e5088
+	       [AC_DEFINE([__FLASHROM_BIG_ENDIAN__], [1], [Big endian])],
a1e5088
+	       [AC_DEFINE([__FLASHROM_LITTLE_ENDIAN__], [1], [Little endian])],
a1e5088
+	       [AC_MSG_ERROR([Unknown endianness])],
a1e5088
+	       [AC_MSG_ERROR([No support for universal binaries yet])]
a1e5088
+	       )
a1e5088
+
c17bb0a
+# Check for CPU-specific features
f4ee62f
+case "$target_cpu" in
eab8405
+	i386|i486|i586|i686|i786|x86_64)
c17bb0a
+		if test "$internal" = 'yes'; then
c17bb0a
+			enable_x86_only_internal="yes"
e6679fe
+		else
e6679fe
+			enable_x86_only_internal="no"
c17bb0a
+		fi
f4ee62f
+		AC_CHECK_HEADERS([sys/io.h])
c17bb0a
+		;;
f4ee62f
+	mips*|power*|arm*)
f4ee62f
+		enable_x86_only_internal="n/a"
c17bb0a
+		if test "$nic3com" = 'yes'; then
eab8405
+			AC_MSG_WARN([NIC 3Com is not supported for this target ($target_cpu). No PCI port I/O access on this architecture yet.])
c17bb0a
+			nic3com="no"
c17bb0a
+		fi
c17bb0a
+		if test "$nicnatsemi" = 'yes'; then
eab8405
+			AC_MSG_WARN([NIC NatSemi is not supported for this target ($target_cpu). No PCI port I/O access on this architecture yet.])
c17bb0a
+			nicnatsemi="no"
c17bb0a
+		fi
c17bb0a
+		if test "$nicrealtek" = 'yes'; then
eab8405
+			AC_MSG_WARN([NIC Realtek is not supported for this target ($target_cpu). No PCI port I/O access on this architecture yet.])
c17bb0a
+			nicrealtek="no"
c17bb0a
+		fi
c17bb0a
+		if test "$rayer_spi" = 'yes'; then
eab8405
+			AC_MSG_WARN([RayeR SPIPGM is not supported for this target ($target_cpu). No PCI port I/O access on this architecture yet.])
c17bb0a
+			rayer_spi="no"
c17bb0a
+		fi
4a6317d
+		if test "$satamv" = 'yes'; then
eab8405
+			AC_MSG_WARN([Marvell SATA is not supported for this target ($target_cpu). No PCI port I/O access on this architecture yet])
4a6317d
+			satamv="no"
4a6317d
+		fi
2026e4b
+		if test "$atahpt" = 'yes'; then
eab8405
+			AC_MSG_WARN([Highpoint (HPT) ATA/RAID controller support is not supported for this target ($target_cpu). No PCI port I/O access on this architecture yet.])
2026e4b
+			atahpt="no"
2026e4b
+		fi
c17bb0a
+		;;
eab8405
+	*)
f4ee62f
+		AC_MSG_ERROR([No support for this CPU ($target_cpu) yet])
eab8405
+		;;
c17bb0a
+esac
c17bb0a
+
523d4bd
+# Enable OS-specific compilation flags
f4ee62f
+case "$target_os" in
f4ee62f
+	linux*)
f4ee62f
+		AC_CHECK_HEADERS([sys/ioctl.h])
f4ee62f
+		AC_ARG_WITH(
f4ee62f
+			    [linux_spi],
f4ee62f
+			    AC_HELP_STRING([--with-linux-spi],[Linux SPI subsystem support.]),
f4ee62f
+			    [linux_spi="$withval"],
f4ee62f
+			    [linux_spi="yes"]
f4ee62f
+			    )
f4ee62f
+		if test "$linux_spi" = "yes" ; then
f4ee62f
+			AC_CHECK_HEADERS([linux/types.h], [], [AC_MSG_ERROR([<linux/types.h> not found])], [])
f4ee62f
+			AC_CHECK_HEADERS([linux/spi/spidev.h], [], [AC_MSG_ERROR([<linux/spi/spidev.h> not found])], [])
f4ee62f
+		fi
f4ee62f
+		;;
f4ee62f
+	darwin*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		AC_CHECK_HEADERS([DirectIO/darwinio.h DirectHW/DirectHW.h])
f4ee62f
+		;;
f4ee62f
+	freebsd*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		AC_CHECK_HEADERS([machine/cpufunc.h])
f4ee62f
+		;;
f4ee62f
+	openbsd*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		AC_CHECK_HEADERS([machine/sysarch.h sys/types.h])
f4ee62f
+		;;
f4ee62f
+	netbsd*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		AC_CHECK_HEADERS([machine/sysarch.h sys/types.h])
f4ee62f
+		;;
f4ee62f
+	*solaris*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		AC_CHECK_HEADERS([asm/sunddi.h strings.h sys/psw.h sys/sysi86.h])
f4ee62f
+		;;
f4ee62f
+	mingw*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		# TODO
f4ee62f
+		;;
f4ee62f
+	*djgpp*)
e6679fe
+		linux_spi="n/a"
f4ee62f
+		AC_CHECK_HEADERS([pc.h])
f4ee62f
+		;;
f4ee62f
+	*)
f4ee62f
+		AC_MSG_ERROR([No support for this OS ($target_os) yet])
f4ee62f
+		;;
f4ee62f
+esac
c17bb0a
+
e6679fe
+# Check whether we need serial support
c17bb0a
+if test "$serprog" = 'yes' -o \
e6679fe
+	"$buspirate_spi" = 'yes' -o \
e6679fe
+	"$pony_spi" = 'yes' ; then
c17bb0a
+	serial="yes"
e6679fe
+else
e6679fe
+	serial="no"
c17bb0a
+fi
c17bb0a
+
c17bb0a
+# Check whether we need PCI support
c17bb0a
+if test "$internal" = 'yes' -o \
c17bb0a
+	"$rayer_spi" = 'yes' -o \
c17bb0a
+	"$nic3com" = 'yes' -o \
c17bb0a
+	"$gfxnvidia" = 'yes' -o \
bbd9bbe
+	"$satasii" = 'yes' -o \
c17bb0a
+	"$atahpt" = 'yes' -o \
c17bb0a
+	"$drkaiser" = 'yes' -o \
c17bb0a
+	"$nicrealtek" = 'yes' -o \
c17bb0a
+	"$nicnatsemi" = 'yes' -o \
4a6317d
+	"$nicintel" = 'yes' -o \
bbd9bbe
+	"$nicintel_spi" = 'yes' -o \
bbd9bbe
+	"$gfxogp" = 'yes' -o \
bbd9bbe
+	"$satamv" = 'yes' ; then
c17bb0a
+	pci="yes"
c17bb0a
+fi
c17bb0a
+
bbd9bbe
+if test "$rayer_spi" = 'yes' -o \
e6679fe
+	"$pony_spi" = 'yes' -o \
bbd9bbe
+	"$internal" = 'yes' -o \
bbd9bbe
+	"$nicintel_spi" = 'yes' -o \
bbd9bbe
+	"$gfxogp" = 'yes' ; then
c17bb0a
+	bitbang_spi="yes"
e6679fe
+else
e6679fe
+	bitbang_spi="no"
c17bb0a
+fi
c17bb0a
+
c17bb0a
+# Checks for programs.
c17bb0a
+AC_PROG_CC
c17bb0a
+AC_PROG_INSTALL
c17bb0a
+AC_PROG_MAKE_SET
c17bb0a
+
2026e4b
+AC_PATH_PROG([DMIDECODE], dmidecode, [], [$PATH$PATH_SEPARATOR/usr/sbin])
c17bb0a
+
c17bb0a
+# Checks for header files.
f4ee62f
+AC_CHECK_HEADERS([limits.h stddef.h stdint.h stdlib.h string.h sys/time.h sys/utsname.h])
c17bb0a
+
c17bb0a
+# Checks for typedefs, structures, and compiler characteristics.
c17bb0a
+AC_C_INLINE
c17bb0a
+AC_TYPE_OFF_T
c17bb0a
+AC_TYPE_SIZE_T
523d4bd
+AC_CHECK_SIZEOF(int)
eab8405
+dnl mingw (for instance) lacks ssize_t
523d4bd
+AC_CHECK_TYPE(ssize_t, int)
523d4bd
+AC_CHECK_TYPE(uint8_t, unsigned char)
523d4bd
+AC_CHECK_TYPE(uint16_t, unsigned short)
523d4bd
+AC_CHECK_TYPE(uint64_t, unsigned long long)
523d4bd
+if test $ac_cv_sizeof_int -eq 4 ; then
523d4bd
+AC_CHECK_TYPE(uint32_t, unsigned int)
523d4bd
+elif test $ac_cv_size_long -eq 4 ; then
523d4bd
+AC_CHECK_TYPE(uint32_t, unsigned long)
523d4bd
+else
523d4bd
+AC_MSG_ERROR([no 32-bit type found])
523d4bd
+fi
c17bb0a
+
c17bb0a
+# Checks for library functions.
c17bb0a
+AC_FUNC_MALLOC
c17bb0a
+AC_FUNC_MMAP
c17bb0a
+AC_FUNC_REALLOC
f4ee62f
+AC_CHECK_FUNCS([getpagesize gettimeofday memmove memset munmap strcasecmp strchr strcspn strdup strerror strncasecmp strspn strstr strtol strtoul uname])
c17bb0a
+
c17bb0a
+# Checks for pcilib
c17bb0a
+if test "$pci" = 'yes' ; then
c17bb0a
+	AC_CHECK_LIB([pci], [pci_alloc],,[AC_MSG_ERROR([pci library missing])])
c17bb0a
+fi
c17bb0a
+
c17bb0a
+# check for socket (required for SunOS)
c17bb0a
+if test "$serprog" = 'yes' ; then
c17bb0a
+	AC_CHECK_LIB([socket], [socket])
f4ee62f
+	AC_CHECK_HEADERS([arpa/inet.h fcntl.h inttypes.h netdb.h netinet/in.h sys/socket.h termios.h unistd.h])
f4ee62f
+	AC_CHECK_FUNCS([gethostbyaddr gethostbyname socket])
c17bb0a
+fi
c17bb0a
+
c17bb0a
+# Check for libusb
c17bb0a
+if test "$dediprog" = 'yes' -o "$ft2232_spi" = 'yes'  ; then
c17bb0a
+	AC_CHECK_LIB([usb], [usb_init])
c17bb0a
+fi
c17bb0a
+
c17bb0a
+if test "$ft2232_spi" = 'yes' ; then
f918b18
+	AC_CHECK_HEADERS([ftdi.h],[],[AC_MSG_ERROR([<ftdi.h> header not found])],[AC_INCLUDES_DEFAULT])
f918b18
+	AC_CHECK_LIB([ftdi],[ftdi_init],,[AC_MSG_ERROR([ftdi library is missing])])
c17bb0a
+fi
c17bb0a
+
c17bb0a
+# For Makefile.am
c17bb0a
+AM_CONDITIONAL(HAVE_INTERNAL, test "$internal" = "yes")
2026e4b
+AM_CONDITIONAL(HAVE_DMIDECODE, test "$DMIDECODE" != "")
c17bb0a
+AM_CONDITIONAL(HAVE_X86_ONLY_INTERNAL, test "$enable_x86_only_internal" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_SERPROG, test "$serprog" = "yes")
eab8405
+AM_CONDITIONAL(HAVE_LINUX_SPI, test "$linux_spi" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_RAYER_SPI, test "$rayer_spi" = "yes")
e6679fe
+AM_CONDITIONAL(HAVE_PONY_SPI, test "$pony_spi" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_BITBANG_SPI, test "$bitbang_spi" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_NIC3COM, test "$nic3com" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_GFXNVIDIA, test "$gfxnvidia" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_SATASII, test "$satasii" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_ATAHPT, test "$atahpt" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_FT2232_SPI, test "$ft2232_spi" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_DUMMY, test "$dummy" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_DRKAISER, test "$drkaiser" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_NICREALTEK, test "$nicrealtek" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_NICNATSEMI, test "$nicnatsemi" = "yes")
4a6317d
+AM_CONDITIONAL(HAVE_NICINTEL, test "$nicintel" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_NICINTEL_SPI, test "$nicintel_spi" = "yes")
523d4bd
+AM_CONDITIONAL(HAVE_GFXOGP, test "$gfxogp" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_BUSPIRATE_SPI, test "$buspirate_spi" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_DEDIPROG, test "$dediprog" = "yes")
bbd9bbe
+AM_CONDITIONAL(HAVE_SATAMV, test "$satamv" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_SERIAL, test "$serial" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_PCI, test "$pci" = "yes")
c17bb0a
+AM_CONDITIONAL(HAVE_PRINT_WIKI, test "$print_wiki" = "yes")
c17bb0a
+
c17bb0a
+AC_CONFIG_FILES([Makefile])
c17bb0a
+AC_OUTPUT
f4ee62f
+
f4ee62f
+AC_MSG_RESULT([
f4ee62f
+------------------------------------------------------------------------
f4ee62f
+  $PACKAGE $VERSION configuration.
f4ee62f
+
f4ee62f
+    Compiler support:
f4ee62f
+
f4ee62f
+      Target CPU: ................... ${target_cpu}
f4ee62f
+      Target OS: .................... ${target_os}
f4ee62f
+
f4ee62f
+    Suppored programmers:
f4ee62f
+
f4ee62f
+      Internal: ..................... ${internal}
f4ee62f
+        x86-only features: .......... ${enable_x86_only_internal}
f4ee62f
+      serprog: ...................... ${serprog}
f4ee62f
+      Linux SPI: .................... ${linux_spi}
f4ee62f
+      RayeR SPI: .................... ${rayer_spi}
f918b18
+      PonyProg2000 SPI: ............. ${pony_spi}
f4ee62f
+      Bitbang SPI: .................. ${bitbang_spi}
f4ee62f
+      3COM NIC: ..................... ${nic3com}
f4ee62f
+      NVIDIA GFX: ................... ${gfxnvidia}
f4ee62f
+      Open Graphics Project GFX: .... ${gfxogp}
f4ee62f
+      Silicon Image SATA: ........... ${satasii}
f4ee62f
+      Highpoint ATA: ................ ${atahpt}
f4ee62f
+      FT232 SPI: .................... ${ft2232_spi}
f4ee62f
+      Dummy: ........................ ${dummy}
f4ee62f
+      Dr. Kaiser: ................... ${drkaiser}
f4ee62f
+      Realtek NIC: .................. ${nicrealtek}
f4ee62f
+      National Semiconductor NIC: ... ${nicnatsemi}
f4ee62f
+      Intel NIC: .................... ${nicintel}
f4ee62f
+      Intel NIC SPI: ................ ${nicintel_spi}
f4ee62f
+      Bus Pirate SPI: ............... ${buspirate_spi}
f4ee62f
+      Dediprog SF100: ............... ${dediprog}
f4ee62f
+      Marvell SATA: ................. ${satamv}
f4ee62f
+      Serial: ....................... ${serial}
f4ee62f
+
f4ee62f
+------------------------------------------------------------------------
f4ee62f
+])
c17bb0a
-- 
5977150
1.7.11.5
c17bb0a