public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Update kernel/Makefile and remove x86 only entries
@ 2008-04-28 19:08 Jerone Young
  2008-04-30 20:16 ` Avi Kivity
  0 siblings, 1 reply; 3+ messages in thread
From: Jerone Young @ 2008-04-28 19:08 UTC (permalink / raw)
  To: kvm-devel; +Cc: kvm-ppc-devel

1 file changed, 25 insertions(+), 13 deletions(-)
kernel/Makefile |   38 +++++++++++++++++++++++++-------------


This patch removes static x86 entries and makes things work for multiple archs.

Signed-off-by: Jerone Young <jyoung5@us.ibm.com>

diff --git a/kernel/Makefile b/kernel/Makefile
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -1,5 +1,10 @@ include ../config.mak
 include ../config.mak
 
+ARCH_DIR=$(ARCH)
+ifneq '$(filter $(ARCH_DIR), x86_64 i386)' ''
+	ARCH_DIR=x86
+endif
+ 
 KVERREL = $(patsubst /lib/modules/%/build,%,$(KERNELDIR))
 
 DESTDIR=
@@ -18,10 +23,19 @@ _hack = mv $1 $1.orig && \
 	    | sed '/\#include/! s/\blapic\b/l_apic/g' > $1 && rm $1.orig
 
 unifdef = mv $1 $1.orig && \
-	  unifdef -DCONFIG_X86 $1.orig > $1; \
+	  unifdef -DCONFIG_$(shell echo $(ARCH_DIR)|tr '[:lower:]' '[:upper:]') $1.orig > $1; \
           [ $$? -le 1 ] && rm $1.orig
 
 hack = $(call _hack,$T/$(strip $1))
+
+ifneq '$(filter $(ARCH_DIR), x86)' ''
+HACK_FILES = kvm_main.c \
+		mmu.c \
+		vmx.c \
+		svm.c \
+		x86.c \
+		irq.h 
+endif
 
 all::
 #	include header priority 1) $LINUX 2) $KERNELDIR 3) include-compat
@@ -49,21 +63,19 @@ header-sync:
 	rm -rf $T
 
 	rm -f include/asm
-	ln -sf asm-x86 include/asm
-	ln -sf asm-x86 include-compat/asm
+	ln -sf asm-$(ARCH_DIR) include/asm
+	ln -sf asm-$(ARCH_DIR) include-compat/asm
 
 source-sync:
 	rm -rf $T
 	rsync --exclude='*.mod.c' -R \
-             "$(LINUX)"/arch/x86/kvm/./*.[ch] \
-             "$(LINUX)"/virt/kvm/./*.[ch] \
-             $T/
-	$(call hack, kvm_main.c)
-	$(call hack, mmu.c)
-	$(call hack, vmx.c)
-	$(call hack, svm.c)
-	$(call hack, x86.c)
-	$(call hack, irq.h)
+	     "$(LINUX)"/arch/$(ARCH_DIR)/kvm/./*.[ch] \
+	     "$(LINUX)"/virt/kvm/./*.[ch] \
+	     $T/
+
+	for i in $(HACK_FILES); \
+		do $(call hack, $$i); done
+
 	for i in $$(find $T -type f -printf '%P '); \
 		do cmp -s $$i $T/$$i || cp $T/$$i $$i; done
 	rm -rf $T
@@ -72,7 +84,7 @@ install:
 	mkdir -p $(DESTDIR)/$(INSTALLDIR)
 	cp *.ko $(DESTDIR)/$(INSTALLDIR)
 	for i in $(ORIGMODDIR)/drivers/kvm/*.ko \
-		 $(ORIGMODDIR)/arch/x86/kvm/*.ko; do \
+		 $(ORIGMODDIR)/arch/$(ARCH_DIR)/kvm/*.ko; do \
 		if [ -f "$$i" ]; then mv "$$i" "$$i.orig"; fi; \
 	done
 	/sbin/depmod -a

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] Update kernel/Makefile and remove x86 only entries
  2008-04-28 19:08 [PATCH] Update kernel/Makefile and remove x86 only entries Jerone Young
@ 2008-04-30 20:16 ` Avi Kivity
  2008-04-30 21:11   ` [kvm-ppc-devel] " Hollis Blanchard
  0 siblings, 1 reply; 3+ messages in thread
From: Avi Kivity @ 2008-04-30 20:16 UTC (permalink / raw)
  To: Jerone Young; +Cc: kvm-devel, kvm-ppc-devel

Jerone Young wrote:
> This patch removes static x86 entries and makes things work for multiple archs.
>
> Signed-off-by: Jerone Young <jyoung5@us.ibm.com>
>
> diff --git a/kernel/Makefile b/kernel/Makefile
> --- a/kernel/Makefile
> +++ b/kernel/Makefile
> @@ -1,5 +1,10 @@ include ../config.mak
>  include ../config.mak
>  
> +ARCH_DIR=$(ARCH)
> +ifneq '$(filter $(ARCH_DIR), x86_64 i386)' ''
> +	ARCH_DIR=x86
> +endif
> + 
>   

Let's be consistent with functions and directives:

  ARCH_DIR=$(if $(filter $(ARCH),x86_64 i386),x86,$(ARCH))

>  KVERREL = $(patsubst /lib/modules/%/build,%,$(KERNELDIR))
>  
>  DESTDIR=
> @@ -18,10 +23,19 @@ _hack = mv $1 $1.orig && \
>  	    | sed '/\#include/! s/\blapic\b/l_apic/g' > $1 && rm $1.orig
>  
>  unifdef = mv $1 $1.orig && \
> -	  unifdef -DCONFIG_X86 $1.orig > $1; \
> +	  unifdef -DCONFIG_$(shell echo $(ARCH_DIR)|tr '[:lower:]' '[:upper:]') $1.orig > $1; \
>            [ $$? -le 1 ] && rm $1.orig
>   

My eyes hurt.  A new variable please (and assign with := to avoid the 
shell being called too often).

>  
>  hack = $(call _hack,$T/$(strip $1))
> +
> +ifneq '$(filter $(ARCH_DIR), x86)' ''
> +HACK_FILES = kvm_main.c \
> +		mmu.c \
> +		vmx.c \
> +		svm.c \
> +		x86.c \
> +		irq.h 
> +endif
>  
>   

hack-files-x86 = ...
hack-files-ppc = ...

hack-files = $(hack-files-$(ARCH_DIR))

(yeah, someone else is now gauging their eyes out)

-- 
Any sufficiently difficult bug is indistinguishable from a feature.


-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [kvm-ppc-devel] [PATCH] Update kernel/Makefile and remove x86 only entries
  2008-04-30 20:16 ` Avi Kivity
@ 2008-04-30 21:11   ` Hollis Blanchard
  0 siblings, 0 replies; 3+ messages in thread
From: Hollis Blanchard @ 2008-04-30 21:11 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm-ppc-devel, kvm-devel, Jerone Young

On Wednesday 30 April 2008 15:16:09 Avi Kivity wrote:
> >  hack = $(call _hack,$T/$(strip $1))
> > +
> > +ifneq '$(filter $(ARCH_DIR), x86)' ''
> > +HACK_FILES = kvm_main.c \
> > +             mmu.c \
> > +             vmx.c \
> > +             svm.c \
> > +             x86.c \
> > +             irq.h 
> > +endif
> >  
> >   
> 
> hack-files-x86 = ...
> hack-files-ppc = ...
> 
> hack-files = $(hack-files-$(ARCH_DIR))

Agreed; this is exactly what I had suggested previously.

-- 
Hollis Blanchard
IBM Linux Technology Center
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-04-30 21:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-28 19:08 [PATCH] Update kernel/Makefile and remove x86 only entries Jerone Young
2008-04-30 20:16 ` Avi Kivity
2008-04-30 21:11   ` [kvm-ppc-devel] " Hollis Blanchard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox