path: root/README
diff options
authorCarl-Daniel Hailfinger <>2012-08-09 23:34:41 +0000
committerCarl-Daniel Hailfinger <>2012-08-09 23:34:41 +0000
commit60d9bd267e38c6241e05f0253845e1d11d04f3b3 (patch)
treeadbb52deb6d42ab9f32ed347d18ff42384190c47 /README
parentb6304c1a1a89330e84eeee34a4c6ef99b163f367 (diff)
Portability fixes and cleanups
Move Mac OS X IOKit/DirectHW availability checks in the Makefile from compiler check to pciutils check. Print the compiler error messages for feature detection. Add DOS libpci in the Makefile includes only if a PCI-based programmer was requested. Restrict mmap usage in ich_descriptors_tool to Unix style systems. Build ich_descriptors_tool with the correct .exe extension on DOS/Windows. Build ich_descriptors_tool by default on x86. (Patch by Stefan Tauner) Print the Windows version instead of "unknown machine" on Windows. Don't #define our own __DARWIN__, use the standard OS X detection method. Update the README. Add more generated files to svn:ignore Corresponding to flashrom svn r1567. Signed-off-by: Carl-Daniel Hailfinger <> Acked-by: Carl-Daniel Hailfinger <>
Diffstat (limited to 'README')
1 files changed, 21 insertions, 12 deletions
diff --git a/README b/README
index f88b3b5..8e812be 100644
--- a/README
+++ b/README
@@ -93,14 +93,18 @@ To compile on OpenBSD, use:
To compile and run on Darwin/Mac OS X:
Install DirectHW from coresystems GmbH.
- DirectHW is available at .
+ DirectHW is available at .
To cross-compile on Linux for DOS:
- Get RPMs of the cross compiler from the DJGPP site and install them:
+ Get packages of the DJGPP cross compiler and install them:
+ djgpp-filesystem djgpp-gcc djgpp-cpp djgpp-runtime djgpp-binutils
+ As an alternative, the DJGPP web site offers packages for download as well:
+ The cross toolchain packages for your distribution may have slightly different
+ names (look for packages named *djgpp*).
Download pciutils 3.1.5 and apply
Download and compile
Compile pciutils, see README.DJGPP for instructions.
@@ -108,7 +112,7 @@ To cross-compile on Linux for DOS:
../libpci should contain pciutils source and binaries.
../libgetopt should contain getopt.a from libgetopt.
Run either (change settings where appropriate)
- make CC=i586-pc-msdosdjgpp-gcc STRIP=i586-pc-msdosdjgpp-strip OS_ARCH=DOS
+ make CC=i586-pc-msdosdjgpp-gcc STRIP=i586-pc-msdosdjgpp-strip
or (above settings hardcoded)
make djgpp-dos
You might have to add WARNERROR=no to the make command line.
@@ -116,17 +120,22 @@ To cross-compile on Linux for DOS: and make sure
CWSDPMI.EXE is in the current directory.
+To cross-compile on Linux for Windows:
+ Get packages of the MinGW cross compiler and install them:
+ mingw32-filesystem mingw32-cross-cpp mingw32-cross-binutils mingw32-cross-gcc
+ mingw32-runtime mingw32-headers
+ The cross toolchain packages for your distribution may have slightly different
+ names (look for packages named *mingw*).
+ PCI-based programmers (internal etc.) are not supported on Windows.
+ Run (change CC= and STRIP= settings where appropriate)
+ make CC=i686-w64-mingw32-gcc STRIP=i686-w64-mingw32-strip
Processor architecture dependent features:
- On non-x86 architectures you have to disable a few programmers because they
- use port-based I/O which is not directly available on non-x86. Please add
- as parameters to the "make" invocation.
- Besides that, the internal programmer is only supported on x86 and MIPS. On
- other architectures, please add
- as parameter to the "make" invocation.
+ On non-x86 architectures a few programmers don't work (yet) because they
+ use port-based I/O which is not directly available on non-x86. Those
+ programmers will be disabled automatically if you run "make".
OpenPOWER on IntegriCloud