]> rtime.felk.cvut.cz Git - omk.git/blobdiff - rules/linux/kernelcfg2mk
OMK kernelcfg2mk: consider name passed to KBUILD_MODNAME as unconditionally quoted...
[omk.git] / rules / linux / kernelcfg2mk
index 435b38779315afafb4c17dd70045cc131f0c7795..e84597cf7c8b78a6b7742e831ffa776453c5783e 100755 (executable)
@@ -54,6 +54,10 @@ if [ -z "$LINUX_VERSION" ] ; then
   LINUX_VERSION=$(grep UTS_RELEASE ${LINUX_DIR}/include/linux/utsrelease.h | \
                  sed 's/[^"]*"\(.*\)\{1\}"/\1/')
 fi
+if [ -z "$LINUX_VERSION" ] ; then
+  LINUX_VERSION=$(grep UTS_RELEASE ${LINUX_DIR}/include/generated/utsrelease.h | \
+                 sed 's/[^"]*"\(.*\)\{1\}"/\1/')
+fi
 
 LINUX_VERSION_MAJOR=$(echo ${LINUX_VERSION} | cut -d. -f1)
 LINUX_VERSION_MINOR=$(echo ${LINUX_VERSION} | cut -d. -f2)
@@ -115,9 +119,9 @@ EOF
        ;;
 
 #=====================================================================
-# test for 2.6.x kernels
+# test for 2.6.x and 3.x kernels
 
-    2.6)
+    2.6 | 3.* | 4.* )
 
        rm -f ${KERN_BUILD_DIR}/kernel.mk
        rm -rf ${KERN_TEST_DIR}
@@ -151,21 +155,28 @@ flags:
        @echo LINUX_CROSS_COMPILE="\$(CROSS_COMPILE)" >>\$(obj)/flags
        @echo LINUX_KERNELRELEASE="\$(KERNELRELEASE)" >>\$(obj)/flags
 ifdef KBUILD_CFLAGS
-       @echo LINUX_CPPFLAGS="\$(KBUILD_CPPFLAGS)" | sed 's#Iinclude#I"\$(LINUXDIR)/include"#g'>>\$(obj)/flags
-       @echo LINUX_AFLAGS="\$(KBUILD_AFLAGS)" | sed 's#Iinclude#I"\$(OMK_LINUX_SRC)/include"#g'>>\$(obj)/flags
-       @echo LINUX_CFLAGS="\$(KBUILD_CFLAGS)" | sed 's#Iinclude#I"\$(OMK_LINUX_SRC)/include"#g'>>\$(obj)/flags
+       @echo LINUX_CPPFLAGS="\$(KBUILD_CPPFLAGS)\$(if \$(filter -I,\$(KBUILD_CPPFLAGS)),, \$(LINUXINCLUDE))" | sed 's#-I\(\./\|include\|arch\)#-I"\$(LINUXDIR)/\1"#g'>>\$(obj)/flags
+       @echo LINUX_AFLAGS="\$(KBUILD_AFLAGS)" | sed 's#-I\(\./\|include\|arch\)#-I"\$(OMK_LINUX_SRC)/\1"#g'>>\$(obj)/flags
+       @echo LINUX_CFLAGS="\$(KBUILD_CFLAGS)" | sed 's#-I\(\./\|include\|arch\)#-I"\$(OMK_LINUX_SRC)/\1"#g'>>\$(obj)/flags
 else
        @echo LINUX_CPPFLAGS="\$(CPPFLAGS)" | sed 's#Iinclude#I"\$(LINUXDIR)/include"#g'>>\$(obj)/flags
        @echo LINUX_AFLAGS="\$(AFLAGS)" | sed 's#Iinclude#I"\$(OMK_LINUX_SRC)/include"#g'>>\$(obj)/flags
        @echo LINUX_CFLAGS="\$(CFLAGS)" | sed 's#Iinclude#I"\$(OMK_LINUX_SRC)/include"#g'>>\$(obj)/flags
 endif
+ifdef KBUILD_CFLAGS_MODULE
+       @echo LINUX_CFLAGS_MODULE="\$(KBUILD_CFLAGS_MODULE)" >>\$(obj)/flags
+       @echo LINUX_AFLAGS_MODULE="\$(KBUILD_AFLAGS_MODULE)" >>\$(obj)/flags
+       @echo LINUX_LDFLAGS_MODULE="\$(KBUILD_LDFLAGS_MODULE)" | sed 's# \./#"\$(OMK_LINUX_SRC)"/#g' >>\$(obj)/flags
+else
        @echo LINUX_CFLAGS_MODULE="\$(CFLAGS_MODULE)" >>\$(obj)/flags
+       @echo LINUX_AFLAGS_MODULE="\$(CFLAGS_MODULE)" >>\$(obj)/flags
+endif
        @echo LINUX_CC="\$(CC)" >>\$(obj)/flags
        @echo LINUX_LD="\$(LD) \$(LDFLAGS) \$(LDFLAGS_MODULE)" | sed 's#\(\<arch/[^ ]*\.o\>\)#"\$(LINUXDIR)/\1"#g' >>\$(obj)/flags
        @echo LINUX_AS="\$(AS)" >>\$(obj)/flags
        @echo LINUX_AR="\$(AR)" >>\$(obj)/flags
        @echo LINUX_MODULE_EXT=".ko" >>\$(obj)/flags
-       @echo LINUX_QUOTE_MODNAME=\$(if \$(findstring KBUILD_STR,\$(basename_flags)),y,) >>\$(obj)/flags
+       @echo LINUX_QUOTE_MODNAME=y >>\$(obj)/flags
        @echo LINUX_CONFIG_MODVERSIONS=\$(CONFIG_MODVERSIONS) >>\$(obj)/flags
        @echo LINUX_CONFIG_MODULE_SRCVERSION_ALL=\$(CONFIG_MODULE_SRCVERSION_ALL) >>\$(obj)/flags
        @echo LINUX_CONFIG_DEBUG_SECTION_MISMATCH=\$(CONFIG_DEBUG_SECTION_MISMATCH) >>\$(obj)/flags
@@ -174,11 +185,8 @@ endif
        @echo LINUX_KBUILD_EXTRA_SYMBOLS=\$(KBUILD_EXTRA_SYMBOLS) >>\$(obj)/flags
        @echo LINUX_KBUILD_MODPOST_WARN=\$(KBUILD_MODPOST_WARN) >>\$(obj)/flags
        @echo LINUX_CROSS_BUILD=\$(cross_build) >>\$(obj)/flags
-       @echo LINUX_KERNELSYMFILE=\$(kernelsymfile) >>\$(obj)/flags
-       @echo LINUX_MODULESYMFILE=\$(modulesymfile) >>\$(obj)/flags
-       @echo LINUX_KERNELMARKERSFILE=\$(kernelmarkersfile) >>\$(obj)/flags
-       @echo LINUX_MARKERSFILE=\$(markersfile) >>\$(obj)/flags
 EOF
+       #echo \$(foreach v, \$(.VARIABLES), \$(v) = \$(\$(v)) '\n')
 
        # modkern_cflags := $(CFLAGS_KERNEL) / $(CFLAGS_MODULE)