This patch fixes compilation on OS X

Signed-off-by: Stefan Reinauer <[EMAIL PROTECTED]>

-- 
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
      Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: [EMAIL PROTECTED]  • http://www.coresystems.de/
Registergericht: Amtsgericht Freiburg • HRB 7656
Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866
Index: HACKING
===================================================================
--- HACKING	(revision 448)
+++ HACKING	(working copy)
@@ -32,7 +32,18 @@
   * dot (>= 1.8.10)
     http://www.graphviz.org/
 
+Building on MacOS X
+-------------------
 
+You have to install MacPorts (tried with 1.4)
+
+Then you go
+
+ $ sudo port install i386-elf-binutils 
+ $ sudo port install i386-elf-gcc
+ $ sudo port install bison
+ $ rehash
+
 Third-party Code and License Overview
 -------------------------------------
 
Index: Makefile
===================================================================
--- Makefile	(revision 448)
+++ Makefile	(working copy)
@@ -45,7 +45,7 @@
 HOSTCC     := gcc
 HOSTCXX    := g++
 HOSTCFLAGS := -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer \
-	      -Wno-unused -Wno-sign-compare
+	      -Wno-unused -Wno-sign-compare -DKBUILD_NO_NLS
 
 LEX        := flex
 LYX        := lyx
@@ -96,6 +96,8 @@
 AS := $(AS_$(ARCH))
 LD := $(LD_$(ARCH))
 OBJCOPY := $(OBJCOPY_$(ARCH))
+AR := $(AR_$(ARCH))
+
 CFLAGS += $(CFLAGS_$(ARCH))
 
 CPPFLAGS := $(LINUXBIOSINCLUDE)
@@ -144,7 +146,7 @@
 	$(Q)printf "#define LINUXBIOS_COMPILE_TIME \"`LANG= date +%T`\"\n" >> $(obj)/build.h
 	$(Q)printf "#define LINUXBIOS_COMPILE_BY \"$(shell PATH=$$PATH:/usr/ucb whoami)\"\n" >> $(obj)/build.h
 	$(Q)printf "#define LINUXBIOS_COMPILE_HOST \"$(shell hostname)\"\n" >> $(obj)/build.h
-	$(Q)printf "#define LINUXBIOS_COMPILE_DOMAIN \"$(shell which dnsdomainname 1>/dev/null && dnsdomainname || domainname)\"\n" >> $(obj)/build.h
+	$(Q)printf "#define LINUXBIOS_COMPILE_DOMAIN \"$(shell test `uname -s` == "Linux" && dnsdomainname || domainname)\"\n" >> $(obj)/build.h
 
 clean:
 	$(Q)printf "  CLEAN   $(subst $(shell pwd)/,,$(obj))\n"
Index: util/kconfig/Makefile
===================================================================
--- util/kconfig/Makefile	(revision 448)
+++ util/kconfig/Makefile	(working copy)
@@ -121,17 +121,17 @@
 $(obj)/util/kconfig/mconf.o: $(src)/util/kconfig/mconf.c
 	$(Q)mkdir -p $(obj)/util/kconfig
 	$(Q)printf "  HOSTCC  $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(HOSTCC) -I$(src)/util/kconfig -c -o $@ $<
+	$(Q)$(HOSTCC) $(HOSTCFLAGS) -I$(src)/util/kconfig -c -o $@ $<
 
 $(obj)/util/kconfig/conf.o: $(src)/util/kconfig/conf.c
 	$(Q)mkdir -p $(obj)/util/kconfig
 	$(Q)printf "  HOSTCC  $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(HOSTCC) -I$(src)/util/kconfig -c -o $@ $<
+	$(Q)$(HOSTCC) $(HOSTCFLAGS) -I$(src)/util/kconfig -c -o $@ $<
 
 $(obj)/util/kconfig/kconfig_load.o: $(src)/util/kconfig/kconfig_load.c
 	$(Q)mkdir -p $(obj)/util/kconfig
 	$(Q)printf "  HOSTCC  $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(HOSTCC) -I$(obj)/util/kconfig -I$(src)/util/kconfig -c -o $@ $<
+	$(Q)$(HOSTCC) $(HOSTCFLAGS) -I$(obj)/util/kconfig -I$(src)/util/kconfig -c -o $@ $<
 
 $(obj)/util/kconfig/qconf.o: $(src)/util/kconfig/qconf.cc $(obj)/util/kconfig/qconf.moc $(obj)/util/kconfig/lkc_defs.h
 	$(Q)mkdir -p $(obj)/util/kconfig
@@ -142,7 +142,7 @@
 $(obj)/util/kconfig/gconf.o: $(src)/util/kconfig/gconf.c $(obj)/util/kconfig/lkc_defs.h
 	$(Q)mkdir -p $(obj)/util/kconfig
 	$(Q)printf "  HOSTCC  $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(HOSTCC) `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \
+	$(Q)$(HOSTCC) $(HOSTCFLAGS) `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \
 		-D LKC_DIRECT_LINK -I$(obj) -I$(src)/util/kconfig -c -o $@ $<
 
 $(obj)/util/kconfig/%.moc: $(src)/util/kconfig/%.h
@@ -158,7 +158,7 @@
 $(obj)/util/kconfig/zconf.tab.o: $(obj)/util/kconfig/zconf.tab.c $(obj)/util/kconfig/zconf.hash.c $(obj)/util/kconfig/lex.zconf.c
 	$(Q)mkdir -p $(obj)/util/kconfig
 	$(Q)printf "  HOSTCC  $(subst $(shell pwd)/,,$(@))\n"
-	$(Q)$(HOSTCC) -I$(src)/util/kconfig  -c -o $@ $(obj)/util/kconfig/zconf.tab.c
+	$(Q)$(HOSTCC) $(HOSTCFLAGS) -I$(src)/util/kconfig  -c -o $@ $(obj)/util/kconfig/zconf.tab.c
 
 $(obj)/util/kconfig/lex.zconf.c: $(src)/util/kconfig/lex.zconf.c_shipped
 	$(Q)mkdir -p $(obj)/util/kconfig
Index: util/xcompile/xcompile
===================================================================
--- util/xcompile/xcompile	(revision 448)
+++ util/xcompile/xcompile	(working copy)
@@ -25,6 +25,8 @@
 			-e s/s390x/s390/ -e s/parisc64/parisc/ \
 			-e s/ppc.*/powerpc/ -e s/mips.*/mips/`
 
+OS=`uname -s`
+
 testcc()
 {
 	TMP=".$$$$.tmp"
@@ -56,22 +58,34 @@
 	echo "CC_x86 := gcc -m32"
 	CC="gcc -m32"
 
+	searchgnu ar >/dev/null && echo "AR_x86 := $(searchgnu ar)"
 	searchgnu as >/dev/null && echo "AS_x86 := $(searchgnu as) --32"
 	searchgnu ld >/dev/null && echo "LD_x86 := $(searchgnu ld) -b elf32-i386 -melf_i386"
 	searchgnu objcopy >/dev/null && echo "OBJCOPY_x86 := $(searchgnu objcopy)"
 	;;
 "x86")
-	echo "CC_x86 := gcc"
-	CC="gcc"
+	if [ "$OS" != "Darwin" ]; then
+		echo "CC_x86 := gcc"
+		CC="gcc"
 
-	searchgnu as >/dev/null && echo "AS_x86 := $(searchgnu as)"
-	searchgnu ld >/dev/null && echo "LD_x86 := $(searchgnu ld)"
-	searchgnu objcopy >/dev/null && echo "OBJCOPY_x86 := $(searchgnu objcopy)"
+		searchgnu ar >/dev/null && echo "AR_x86 := $(searchgnu ar)"
+		searchgnu as >/dev/null && echo "AS_x86 := $(searchgnu as)"
+		searchgnu ld >/dev/null && echo "LD_x86 := $(searchgnu ld)"
+		searchgnu objcopy >/dev/null && echo "OBJCOPY_x86 := $(searchgnu objcopy)"
+	else
+		CC="i386-elf-gcc-3.4.3"
+		echo "CC_x86 := i386-elf-gcc-3.4.3"
+		echo "AR_x86 := i386-elf-ar"
+		echo "AS_x86 := i386-elf-as"
+		echo "LD_x86 := i386-elf-ld"
+		echo "OBJCOPY_x86 := i386-elf-objcopy"
+	fi
 	;;
 *)
 	# FIXME: This should be detected.
 	CC="i386-linux-gcc"
 	echo "CC_x86 := i386-linux-gcc"
+	echo "AR_x86 := i386-linux-ar"
 	echo "AS_x86 := i386-linux-as"
 	echo "LD_x86 := i386-linux-ld"
 	echo "OBJCOPY_x86 := i386-linux-objcopy"
Index: util/dtc/libdt.c
===================================================================
--- util/dtc/libdt.c	(revision 448)
+++ util/dtc/libdt.c	(working copy)
@@ -23,8 +23,8 @@
 
 #include "flat_dt.h"
 
-#define ALIGN(x, a)	(((x) + ((a) - 1)) & ~((a) - 1))
-#define PALIGN(p, a)	((void *)(ALIGN((unsigned long)(p), (a))))
+#define DALIGN(x, a)	(((x) + ((a) - 1)) & ~((a) - 1))
+#define PALIGN(p, a)	((void *)(DALIGN((unsigned long)(p), (a))))
 #define GET_CELL(p)	(p += 4, *((uint32_t *)(p-4)))
 
 static char *skip_name(char *p)
Index: util/dtc/ftdump.c
===================================================================
--- util/dtc/ftdump.c	(revision 448)
+++ util/dtc/ftdump.c	(working copy)
@@ -25,8 +25,8 @@
 #define be64_to_cpu(x)	bswap_64(x)
 #endif
 
-#define ALIGN(x, a)	(((x) + ((a) - 1)) & ~((a) - 1))
-#define PALIGN(p, a)	((void *)(ALIGN((unsigned long)(p), (a))))
+#define DALIGN(x, a)	(((x) + ((a) - 1)) & ~((a) - 1))
+#define PALIGN(p, a)	((void *)(DALIGN((unsigned long)(p), (a))))
 #define GET_CELL(p)	(p += 4, *((uint32_t *)(p-4)))
 
 static int is_printable_string(const void *data, int len)
Index: util/dtc/flattree.c
===================================================================
--- util/dtc/flattree.c	(revision 448)
+++ util/dtc/flattree.c	(working copy)
@@ -960,7 +960,7 @@
 	bph->last_comp_version = cpu_to_be32(vi->last_comp_version);
 
 	/* Reserve map should be doubleword aligned */
-	reserve_off = ALIGN(vi->hdr_size, 8);
+	reserve_off = DALIGN(vi->hdr_size, 8);
 
 	bph->off_mem_rsvmap = cpu_to_be32(reserve_off);
 	bph->off_dt_struct = cpu_to_be32(reserve_off + reservesize);
@@ -1395,7 +1395,7 @@
 {
 	int off = inb->ptr - inb->base;
 
-	inb->ptr = inb->base + ALIGN(off, align);
+	inb->ptr = inb->base + DALIGN(off, align);
 	if (inb->ptr > inb->limit)
 		die("Premature end of data parsing flat device tree\n");
 }
Index: util/dtc/data.c
===================================================================
--- util/dtc/data.c	(revision 448)
+++ util/dtc/data.c	(working copy)
@@ -237,7 +237,7 @@
 
 struct data data_append_align(struct data d, int align)
 {
-	int newlen = ALIGN(d.len, align);
+	int newlen = DALIGN(d.len, align);
 	return data_append_zeroes(d, newlen - d.len);
 }
 
Index: util/dtc/dtc.h
===================================================================
--- util/dtc/dtc.h	(revision 448)
+++ util/dtc/dtc.h	(working copy)
@@ -90,7 +90,7 @@
 #define streq(a, b)	(strcmp((char *)(a), (char *)(b)) == 0)
 #define strneq(a, b, n)	(strncmp((char *)(a), (char *)(b), (n)) == 0)
 
-#define ALIGN(x, a)	(((x) + (a) - 1) & ~((a) - 1))
+#define DALIGN(x, a)	(((x) + (a) - 1) & ~((a) - 1))
 #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
 
 /* Data blobs */
-- 
linuxbios mailing list
linuxbios@linuxbios.org
http://www.linuxbios.org/mailman/listinfo/linuxbios

Reply via email to