On Fri, Apr 17, 2015 at 4:39 PM, Ben Pfaff <[email protected]> wrote:

> On Fri, Apr 17, 2015 at 02:04:07PM -0700, Alex Wang wrote:
> > With the latest change of separating vports into their own modules,
> > we need to update the dkms.conf.in and make dkms install all vport
> > modules.
> >
> > Signed-off-by: Alex Wang <[email protected]>
>
> Acked-by: Ben Pfaff <[email protected]>
>


How about this?

I added a new target in datapath/Modules.mk to print all kernel modules.

---
 datapath/Modules.mk |    4 ++++
 debian/dkms.conf.in |   10 +++++++---
 debian/rules        |    2 +-
 3 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/datapath/Modules.mk b/datapath/Modules.mk
index 2a3acb0..0716329 100644
--- a/datapath/Modules.mk
+++ b/datapath/Modules.mk
@@ -53,3 +53,7 @@ build_sources = $(foreach
module,$(build_modules),$($(module)_sources))
 build_headers = $(foreach module,$(build_modules),$($(module)_headers))
 build_links = $(notdir $(build_sources))
 build_objects = $(notdir $(patsubst %.c,%.o,$(build_sources)))
+
+# Prints all modules to be built.
+print-build-modules:
+       @echo $(build_modules) | tr '_' '-'
\ No newline at end of file
diff --git a/debian/dkms.conf.in b/debian/dkms.conf.in
index a477761..2c90b4d 100644
--- a/debian/dkms.conf.in
+++ b/debian/dkms.conf.in
@@ -1,7 +1,11 @@
+MODULES=( __MODULES__ )
+
 PACKAGE_NAME="openvswitch"
 PACKAGE_VERSION="__VERSION__"
 MAKE="./configure --with-linux='${kernel_source_dir}' && make -C
datapath/linux"
-BUILT_MODULE_NAME[0]=openvswitch
-BUILT_MODULE_LOCATION[0]=datapath/linux/
-DEST_MODULE_LOCATION[0]=/kernel/drivers/net/openvswitch/
+for __idx in ${!MODULES[@]}; do
+    BUILT_MODULE_NAME[__idx]=${MODULES[__idx]}
+    BUILT_MODULE_LOCATION[__idx]=datapath/linux/
+    DEST_MODULE_LOCATION[__idx]=/kernel/drivers/net/openvswitch/
+done
 AUTOINSTALL=yes
diff --git a/debian/rules b/debian/rules
index a5dccac..2409de4 100755
--- a/debian/rules
+++ b/debian/rules
@@ -106,7 +106,7 @@ install-indep: build-indep
        cd debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION) &&
tar xvzf $(CURDIR)/_debian/openvswitch.tar.gz && mv openvswitch/*
openvswitch/.[a-z]* . && rmdir openvswitch

        # Prepare dkms.conf from the dkms.conf.in template
-       sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g" debian/dkms.conf.in >
debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/dkms.conf
+       sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g; s/__MODULES__/$(shell
$(MAKE) -C _debian/datapath print-build-modules | grep -v make)/" debian/
dkms.conf.in >
debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/dkms.conf

        # We don't need the debian folder in there, just upstream sources...
        rm -rf
debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/debian


--
1.7.9.5
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to