[PATCH/RFC] Support cross compile

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

It is difficult to cross compile pciutils, as the host is not standard 3 or 4 components and one need to pass all tools cross compile prefixes.

The attached patch makes it easier, please review.

1. Add CROSS_COMPILE prefix for all toolchain tools. I also changed default CC to gcc, I can fix this if you like.

2. Allow parsing standard HOST, such as i686-pc-linux-gnu.

3. Make rel be RELEASE, maybe the whole release thing can be removed as it is not actually use.

Signed-off-by: Alon Bar-Lev <alon.barlev@xxxxxxxxx>

---

diff --git a/Makefile b/Makefile
index bc163db..67acf88 100644
--- a/Makefile
+++ b/Makefile
@@ -10,6 +10,7 @@ DATE=2008-09-19
 # Host OS and release (override if you are cross-compiling)
 HOST=
 RELEASE=
+CROSS_COMPILE=
 
 # Support for compressed pci.ids (yes/no, default: detect)
 ZLIB=
@@ -37,8 +38,9 @@ PKGCFDIR=$(LIBDIR)/pkgconfig
 INSTALL=install
 DIRINSTALL=install -d
 STRIP=-s
-AR=ar
-RANLIB=ranlib
+CC=$(CROSS_COMPILE)gcc
+AR=$(CROSS_COMPILE)ar
+RANLIB=$(CROSS_COMPILE)ranlib
 
 # Base name of the library (overriden on NetBSD, which has its own libpci)
 LIBNAME=libpci
diff --git a/lib/configure b/lib/configure
index 4f17cdc..8895fce 100755
--- a/lib/configure
+++ b/lib/configure
@@ -38,11 +38,12 @@ if [ -z "$HOST" ] ; then
 	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
@@ -63,7 +64,7 @@ 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
@@ -71,7 +72,7 @@ case $sys in
 		;;
 	sunos)
 		case $cpu in
-				i386)		echo_n " i386-ports"
+				i?86)		echo_n " i386-ports"
 						echo >>$c "#define PCI_HAVE_PM_INTEL_CONF"
 						;;
 				*)
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux