diff mbox

[ovs-dev,1/2] Debian: Rework libopenvswitch packages

Message ID 183e5041ed64aaceebe5565a5ea31911aa00b83e.1496950313.git.ben@skyportsystems.com
State Accepted
Headers show

Commit Message

Li,Rongqing via dev June 8, 2017, 8:47 p.m. UTC
From: Ben Warren <ben@skyportsystems.com>

The 'openvswitch-common' package did not work well with cross-compiling
since it required Python.  This package is broken into two packages as
follows:
- libopenvwitch: contains library files (.a, .so)
- openvswitch-common: depends on libopenvswitch, contains command-line
  tools such as ovs-ofctl, ovs-appctl etc.

In addition, this 'openvswitch-dev' library is renamed to
'libopenvswitch-dev' to align more closely with Debian policy.  It
depends on libopenvswitch.

Signed-off-by: Ben Warren <ben@skyportsystems.com>
---
 debian/.gitignore                 |  4 +++-
 debian/automake.mk                |  3 ++-
 debian/control                    | 23 +++++++++++++++++++++--
 debian/libopenvswitch-dev.install | 11 +++++++++++
 debian/libopenvswitch.install     |  1 +
 debian/openvswitch-common.install |  1 -
 debian/openvswitch-dev.install    | 11 -----------
 7 files changed, 38 insertions(+), 16 deletions(-)
 create mode 100644 debian/libopenvswitch-dev.install
 create mode 100644 debian/libopenvswitch.install
 delete mode 100644 debian/openvswitch-dev.install
diff mbox

Patch

diff --git a/debian/.gitignore b/debian/.gitignore
index 4baed48..9ec70eb 100644
--- a/debian/.gitignore
+++ b/debian/.gitignore
@@ -6,6 +6,8 @@ 
 /control
 /copyright
 /files
+/libopenvswitch
+/libopenvswitch-dev
 /nicira-switch
 /openvswitch
 /openvswitch-common
@@ -13,7 +15,6 @@ 
 /openvswitch-datapath-source
 /openvswitch-datapath-dkms
 /openvswitch-dbg
-/openvswitch-dev
 /openvswitch-ipsec
 /openvswitch-pki
 /openvswitch-switch
@@ -22,6 +23,7 @@ 
 /openvswitch-testcontroller
 /openvswitch-vtep
 /ovn-common
+/ovn-controller-vtep
 /ovn-host
 /ovn-central
 /ovn-docker
diff --git a/debian/automake.mk b/debian/automake.mk
index 07ea912..4d8e204 100644
--- a/debian/automake.mk
+++ b/debian/automake.mk
@@ -7,6 +7,8 @@  EXTRA_DIST += \
 	debian/copyright.in \
 	debian/dkms.conf.in \
 	debian/dirs \
+	debian/libopenvswitch.install \
+	debian/libopenvswitch-dev.install \
 	debian/openvswitch-common.dirs \
 	debian/openvswitch-common.docs \
 	debian/openvswitch-common.install \
@@ -18,7 +20,6 @@  EXTRA_DIST += \
 	debian/openvswitch-datapath-source.copyright \
 	debian/openvswitch-datapath-source.dirs \
 	debian/openvswitch-datapath-source.install \
-	debian/openvswitch-dev.install \
 	debian/openvswitch-pki.dirs \
 	debian/openvswitch-pki.postinst \
 	debian/openvswitch-pki.postrm \
diff --git a/debian/control b/debian/control
index 0b75f2b..42e6f16 100644
--- a/debian/control
+++ b/debian/control
@@ -59,6 +59,7 @@  Architecture: linux-any
 Depends: openssl,
          python (>= 2.7),
          python-six,
+         libopenvswitch (= ${binary:Version}),
          ${misc:Depends},
          ${shlibs:Depends}
 Suggests: ethtool
@@ -76,6 +77,22 @@  Description: Open vSwitch common components
  openvswitch-common provides components required by both openvswitch-switch
  and openvswitch-testcontroller.
 
+Package: libopenvswitch
+Architecture: linux-any
+Depends: libssl-dev,
+         ${misc:Depends},
+         ${shlibs:Depends}
+Description: Open vSwitch common components
+ Open vSwitch is a production quality, multilayer, software-based,
+ Ethernet virtual switch. It is designed to enable massive network
+ automation through programmatic extension, while still supporting
+ standard management interfaces and protocols (e.g. NetFlow, IPFIX,
+ sFlow, SPAN, RSPAN, CLI, LACP, 802.1ag). In addition, it is designed
+ to support distribution across multiple physical servers similar to
+ VMware's vNetwork distributed vswitch or Cisco's Nexus 1000V.
+ .
+ libopenvswitch provides runtime libraries for use by openvswitch binaries
+
 Package: openvswitch-switch
 Architecture: linux-any
 Suggests: openvswitch-datapath-module
@@ -283,11 +300,13 @@  Description: Open vSwitch VTEP utilities
  This package provides utilities that are useful to interact with a
  VTEP-configured database and a VTEP emulator.
 
-Package: openvswitch-dev
+Package: libopenvswitch-dev
 Architecture: linux-any
 Depends:
- openvswitch-common (>= ${binary:Version}),
+ libopenvswitch (>= ${binary:Version}),
  ${misc:Depends}
+Conflicts: openvswitch-dev
+Replaces: openvswitch-dev
 Description: Open vSwitch development package
  Open vSwitch is a production quality, multilayer, software-based, Ethernet
  virtual switch. It is designed to enable massive network automation through
diff --git a/debian/libopenvswitch-dev.install b/debian/libopenvswitch-dev.install
new file mode 100644
index 0000000..11791e4
--- /dev/null
+++ b/debian/libopenvswitch-dev.install
@@ -0,0 +1,11 @@ 
+usr/lib/lib*.so
+usr/lib/lib*.a
+usr/lib/pkgconfig
+include/*.h usr/include/openvswitch
+include/openflow/*.h usr/include/openvswitch/openflow
+include/openvswitch/*.h usr/include/openvswitch/openvswitch
+include/sparse/*.h usr/include/openvswitch/sparse
+include/sparse/arpa/*.h usr/include/openvswitch/sparse/arpa
+include/sparse/netinet/*.h usr/include/openvswitch/sparse/netinet
+include/sparse/sys/*.h usr/include/openvswitch/sparse/sys
+lib/*.h usr/include/openvswitch/lib
diff --git a/debian/libopenvswitch.install b/debian/libopenvswitch.install
new file mode 100644
index 0000000..d0dbfd1
--- /dev/null
+++ b/debian/libopenvswitch.install
@@ -0,0 +1 @@ 
+usr/lib/lib*.so.*
diff --git a/debian/openvswitch-common.install b/debian/openvswitch-common.install
index ebb7d5c..3264ea5 100644
--- a/debian/openvswitch-common.install
+++ b/debian/openvswitch-common.install
@@ -9,4 +9,3 @@  usr/sbin/ovs-bugtool
 usr/share/openvswitch/bugtool-plugins
 usr/share/openvswitch/scripts/ovs-bugtool-*
 usr/share/openvswitch/scripts/ovs-lib
-usr/lib/lib*.so.*
diff --git a/debian/openvswitch-dev.install b/debian/openvswitch-dev.install
deleted file mode 100644
index 11791e4..0000000
--- a/debian/openvswitch-dev.install
+++ /dev/null
@@ -1,11 +0,0 @@ 
-usr/lib/lib*.so
-usr/lib/lib*.a
-usr/lib/pkgconfig
-include/*.h usr/include/openvswitch
-include/openflow/*.h usr/include/openvswitch/openflow
-include/openvswitch/*.h usr/include/openvswitch/openvswitch
-include/sparse/*.h usr/include/openvswitch/sparse
-include/sparse/arpa/*.h usr/include/openvswitch/sparse/arpa
-include/sparse/netinet/*.h usr/include/openvswitch/sparse/netinet
-include/sparse/sys/*.h usr/include/openvswitch/sparse/sys
-lib/*.h usr/include/openvswitch/lib