Thread (21 messages) 21 messages, 4 authors, 2008-05-15

Re: [PATCH 9/9] HID: add compat support

From: Sam Ravnborg <hidden>
Date: 2008-05-11 21:18:24
Also in: lkml

On Sun, May 11, 2008 at 11:07:08PM +0200, Jiri Slaby wrote:
On 05/11/2008 10:48 PM, Sam Ravnborg wrote:
quoted
On Sun, May 11, 2008 at 10:00:43PM +0200, Jiri Slaby wrote:
quoted
diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile
index 8a5cbbe..c5bca8f 100644
--- a/drivers/hid/Makefile
+++ b/drivers/hid/Makefile
@@ -15,3 +15,25 @@ obj-$(CONFIG_USB_HID)		+= usbhid/
obj-$(CONFIG_USB_MOUSE)		+= usbhid/
obj-$(CONFIG_USB_KBD)		+= usbhid/

+targets := hid-dummy.h
+
+ifdef CONFIG_HID_COMPAT
+
+obj-m		+= hid-dummy.o
+
+$(srctree)/$(src)/hid-dummy.c: $(obj)/hid-dummy.h
+
+$(obj)/hid-dummy.h: $(filter-out 
$(srctree)/drivers/hid/hid-dummy.c,$(wildcard $(srctree)/drivers/hid/*.c))
+	@echo -e 'static void __always_inline hid_dummy_load(void)\n{' > $@
+	@FUNS=`grep -h 'HID_COMPAT_LOAD_DRIVER(' $(srctree)/drivers/hid/*.c 
| \
+	sed -e 's/HID_COMPAT_LOAD_DRIVER( *\([^ ]*\) *) *;/\1/'`; \
+	for FUN in $$FUNS; do \
+		echo -e "\textern void hid_compat_$$FUN(void);"; \
+	done >> $@; \
+	echo >> $@; \
+	for FUN in $$FUNS; do \
+		echo -e "\thid_compat_$$FUN();"; \
+	done >> $@
+	@echo "}" >> $@
I would prefer to see this done explicit in favour of some magic
makefile fragment as the above.
It is much simpler to understand if done explicit.
And it is not like we are talking 10 or 50 files here.
Sorry, I don't understand you at all. Could you re-formulate what do you 
want to see rather than this? Maybe an example would be good.
The code above generates the file hid-dummy.h based on
the HID_COMPAT_LOAD_DRIVER(*) text in a few .c files.
So what I try to say is that we should replace the above with
a hid-dummy.h file that is handedited.

We could stick a few comments in the .h file explaining the usage too.


Or maybe I'm just confused and misunderstood what the code does?


	Sam

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help