Add switch.h as patch to swconfig
This commit is contained in:
parent
ca6a3feb9a
commit
f0d977b27c
@ -85,7 +85,7 @@ chroot_build_packages()
|
||||
|
||||
for plugin in $SRC/lib/extras-buildpkgs/*.conf; do
|
||||
unset package_name package_repo package_ref package_builddeps package_install_chroot package_install_target \
|
||||
package_prebuild_eval package_upstream_version needs_building plugin_target_dir package_component
|
||||
package_upstream_version needs_building plugin_target_dir package_component
|
||||
source $plugin
|
||||
|
||||
# check build condition
|
||||
@ -139,8 +139,6 @@ chroot_build_packages()
|
||||
cd /root/build/$package_name
|
||||
# copy overlay / "debianization" files
|
||||
[[ -d "/root/overlay/$package_name/" ]] && rsync -aq /root/overlay/$package_name /root/build/
|
||||
# execute additional commands before building
|
||||
[[ -n "$package_prebuild_eval" ]] && eval "$package_prebuild_eval"
|
||||
# set upstream version
|
||||
[[ -n "$package_upstream_version" ]] && debchange --preserve --newversion "$package_upstream_version" "Import from upstream"
|
||||
# set local version
|
||||
|
||||
@ -2,7 +2,6 @@
|
||||
local package_name="swconfig"
|
||||
local package_repo="https://github.com/jekader/swconfig.git"
|
||||
local package_ref="branch:master"
|
||||
local package_prebuild_eval="mkdir -p /usr/local/include/linux; cp linux/switch.h /usr/local/include/linux/"
|
||||
local package_builddeps="linux-headers-armmp libnl-3-dev libnl-genl-3-dev"
|
||||
local package_install_target="swconfig"
|
||||
local package_component="utils"
|
||||
|
||||
139
extras-buildpkgs/swconfig/debian/patches/add-switch-h.patch
Normal file
139
extras-buildpkgs/swconfig/debian/patches/add-switch-h.patch
Normal file
@ -0,0 +1,139 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index b142268..c981859 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,6 +1,9 @@
|
||||
ifndef CFLAGS
|
||||
CFLAGS = -O2 -g -I /usr/include/libnl3/
|
||||
endif
|
||||
+
|
||||
+CFLAGS += -I ./include/
|
||||
+
|
||||
LIBS=-lnl-3 -lnl-genl-3
|
||||
all: swconfig
|
||||
|
||||
diff --git a/include/linux/switch.h b/include/linux/switch.h
|
||||
new file mode 100644
|
||||
index 0000000..ea44965
|
||||
--- /dev/null
|
||||
+++ b/include/linux/switch.h
|
||||
@@ -0,0 +1,119 @@
|
||||
+/*
|
||||
+ * switch.h: Switch configuration API
|
||||
+ *
|
||||
+ * Copyright (C) 2008 Felix Fietkau <nbd@nbd.name>
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU General Public License
|
||||
+ * as published by the Free Software Foundation; either version 2
|
||||
+ * of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This program is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ * GNU General Public License for more details.
|
||||
+ */
|
||||
+
|
||||
+#ifndef _UAPI_LINUX_SWITCH_H
|
||||
+#define _UAPI_LINUX_SWITCH_H
|
||||
+
|
||||
+#include <linux/types.h>
|
||||
+#include <linux/netdevice.h>
|
||||
+#include <linux/netlink.h>
|
||||
+#include <linux/genetlink.h>
|
||||
+#ifndef __KERNEL__
|
||||
+#include <netlink/netlink.h>
|
||||
+#include <netlink/genl/genl.h>
|
||||
+#include <netlink/genl/ctrl.h>
|
||||
+#endif
|
||||
+
|
||||
+/* main attributes */
|
||||
+enum {
|
||||
+ SWITCH_ATTR_UNSPEC,
|
||||
+ /* global */
|
||||
+ SWITCH_ATTR_TYPE,
|
||||
+ /* device */
|
||||
+ SWITCH_ATTR_ID,
|
||||
+ SWITCH_ATTR_DEV_NAME,
|
||||
+ SWITCH_ATTR_ALIAS,
|
||||
+ SWITCH_ATTR_NAME,
|
||||
+ SWITCH_ATTR_VLANS,
|
||||
+ SWITCH_ATTR_PORTS,
|
||||
+ SWITCH_ATTR_PORTMAP,
|
||||
+ SWITCH_ATTR_CPU_PORT,
|
||||
+ /* attributes */
|
||||
+ SWITCH_ATTR_OP_ID,
|
||||
+ SWITCH_ATTR_OP_TYPE,
|
||||
+ SWITCH_ATTR_OP_NAME,
|
||||
+ SWITCH_ATTR_OP_PORT,
|
||||
+ SWITCH_ATTR_OP_VLAN,
|
||||
+ SWITCH_ATTR_OP_VALUE_INT,
|
||||
+ SWITCH_ATTR_OP_VALUE_STR,
|
||||
+ SWITCH_ATTR_OP_VALUE_PORTS,
|
||||
+ SWITCH_ATTR_OP_VALUE_LINK,
|
||||
+ SWITCH_ATTR_OP_DESCRIPTION,
|
||||
+ /* port lists */
|
||||
+ SWITCH_ATTR_PORT,
|
||||
+ SWITCH_ATTR_MAX
|
||||
+};
|
||||
+
|
||||
+enum {
|
||||
+ /* port map */
|
||||
+ SWITCH_PORTMAP_PORTS,
|
||||
+ SWITCH_PORTMAP_SEGMENT,
|
||||
+ SWITCH_PORTMAP_VIRT,
|
||||
+ SWITCH_PORTMAP_MAX
|
||||
+};
|
||||
+
|
||||
+/* commands */
|
||||
+enum {
|
||||
+ SWITCH_CMD_UNSPEC,
|
||||
+ SWITCH_CMD_GET_SWITCH,
|
||||
+ SWITCH_CMD_NEW_ATTR,
|
||||
+ SWITCH_CMD_LIST_GLOBAL,
|
||||
+ SWITCH_CMD_GET_GLOBAL,
|
||||
+ SWITCH_CMD_SET_GLOBAL,
|
||||
+ SWITCH_CMD_LIST_PORT,
|
||||
+ SWITCH_CMD_GET_PORT,
|
||||
+ SWITCH_CMD_SET_PORT,
|
||||
+ SWITCH_CMD_LIST_VLAN,
|
||||
+ SWITCH_CMD_GET_VLAN,
|
||||
+ SWITCH_CMD_SET_VLAN
|
||||
+};
|
||||
+
|
||||
+/* data types */
|
||||
+enum switch_val_type {
|
||||
+ SWITCH_TYPE_UNSPEC,
|
||||
+ SWITCH_TYPE_INT,
|
||||
+ SWITCH_TYPE_STRING,
|
||||
+ SWITCH_TYPE_PORTS,
|
||||
+ SWITCH_TYPE_LINK,
|
||||
+ SWITCH_TYPE_NOVAL,
|
||||
+};
|
||||
+
|
||||
+/* port nested attributes */
|
||||
+enum {
|
||||
+ SWITCH_PORT_UNSPEC,
|
||||
+ SWITCH_PORT_ID,
|
||||
+ SWITCH_PORT_FLAG_TAGGED,
|
||||
+ SWITCH_PORT_ATTR_MAX
|
||||
+};
|
||||
+
|
||||
+/* link nested attributes */
|
||||
+enum {
|
||||
+ SWITCH_LINK_UNSPEC,
|
||||
+ SWITCH_LINK_FLAG_LINK,
|
||||
+ SWITCH_LINK_FLAG_DUPLEX,
|
||||
+ SWITCH_LINK_FLAG_ANEG,
|
||||
+ SWITCH_LINK_FLAG_TX_FLOW,
|
||||
+ SWITCH_LINK_FLAG_RX_FLOW,
|
||||
+ SWITCH_LINK_SPEED,
|
||||
+ SWITCH_LINK_FLAG_EEE_100BASET,
|
||||
+ SWITCH_LINK_FLAG_EEE_1000BASET,
|
||||
+ SWITCH_LINK_ATTR_MAX,
|
||||
+};
|
||||
+
|
||||
+#define SWITCH_ATTR_DEFAULTS_OFFSET 0x1000
|
||||
+
|
||||
+
|
||||
+#endif /* _UAPI_LINUX_SWITCH_H */
|
||||
1
extras-buildpkgs/swconfig/debian/patches/series
Normal file
1
extras-buildpkgs/swconfig/debian/patches/series
Normal file
@ -0,0 +1 @@
|
||||
add-switch-h.patch
|
||||
@ -1,119 +0,0 @@
|
||||
/*
|
||||
* switch.h: Switch configuration API
|
||||
*
|
||||
* Copyright (C) 2008 Felix Fietkau <nbd@nbd.name>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef _UAPI_LINUX_SWITCH_H
|
||||
#define _UAPI_LINUX_SWITCH_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/netdevice.h>
|
||||
#include <linux/netlink.h>
|
||||
#include <linux/genetlink.h>
|
||||
#ifndef __KERNEL__
|
||||
#include <netlink/netlink.h>
|
||||
#include <netlink/genl/genl.h>
|
||||
#include <netlink/genl/ctrl.h>
|
||||
#endif
|
||||
|
||||
/* main attributes */
|
||||
enum {
|
||||
SWITCH_ATTR_UNSPEC,
|
||||
/* global */
|
||||
SWITCH_ATTR_TYPE,
|
||||
/* device */
|
||||
SWITCH_ATTR_ID,
|
||||
SWITCH_ATTR_DEV_NAME,
|
||||
SWITCH_ATTR_ALIAS,
|
||||
SWITCH_ATTR_NAME,
|
||||
SWITCH_ATTR_VLANS,
|
||||
SWITCH_ATTR_PORTS,
|
||||
SWITCH_ATTR_PORTMAP,
|
||||
SWITCH_ATTR_CPU_PORT,
|
||||
/* attributes */
|
||||
SWITCH_ATTR_OP_ID,
|
||||
SWITCH_ATTR_OP_TYPE,
|
||||
SWITCH_ATTR_OP_NAME,
|
||||
SWITCH_ATTR_OP_PORT,
|
||||
SWITCH_ATTR_OP_VLAN,
|
||||
SWITCH_ATTR_OP_VALUE_INT,
|
||||
SWITCH_ATTR_OP_VALUE_STR,
|
||||
SWITCH_ATTR_OP_VALUE_PORTS,
|
||||
SWITCH_ATTR_OP_VALUE_LINK,
|
||||
SWITCH_ATTR_OP_DESCRIPTION,
|
||||
/* port lists */
|
||||
SWITCH_ATTR_PORT,
|
||||
SWITCH_ATTR_MAX
|
||||
};
|
||||
|
||||
enum {
|
||||
/* port map */
|
||||
SWITCH_PORTMAP_PORTS,
|
||||
SWITCH_PORTMAP_SEGMENT,
|
||||
SWITCH_PORTMAP_VIRT,
|
||||
SWITCH_PORTMAP_MAX
|
||||
};
|
||||
|
||||
/* commands */
|
||||
enum {
|
||||
SWITCH_CMD_UNSPEC,
|
||||
SWITCH_CMD_GET_SWITCH,
|
||||
SWITCH_CMD_NEW_ATTR,
|
||||
SWITCH_CMD_LIST_GLOBAL,
|
||||
SWITCH_CMD_GET_GLOBAL,
|
||||
SWITCH_CMD_SET_GLOBAL,
|
||||
SWITCH_CMD_LIST_PORT,
|
||||
SWITCH_CMD_GET_PORT,
|
||||
SWITCH_CMD_SET_PORT,
|
||||
SWITCH_CMD_LIST_VLAN,
|
||||
SWITCH_CMD_GET_VLAN,
|
||||
SWITCH_CMD_SET_VLAN
|
||||
};
|
||||
|
||||
/* data types */
|
||||
enum switch_val_type {
|
||||
SWITCH_TYPE_UNSPEC,
|
||||
SWITCH_TYPE_INT,
|
||||
SWITCH_TYPE_STRING,
|
||||
SWITCH_TYPE_PORTS,
|
||||
SWITCH_TYPE_LINK,
|
||||
SWITCH_TYPE_NOVAL,
|
||||
};
|
||||
|
||||
/* port nested attributes */
|
||||
enum {
|
||||
SWITCH_PORT_UNSPEC,
|
||||
SWITCH_PORT_ID,
|
||||
SWITCH_PORT_FLAG_TAGGED,
|
||||
SWITCH_PORT_ATTR_MAX
|
||||
};
|
||||
|
||||
/* link nested attributes */
|
||||
enum {
|
||||
SWITCH_LINK_UNSPEC,
|
||||
SWITCH_LINK_FLAG_LINK,
|
||||
SWITCH_LINK_FLAG_DUPLEX,
|
||||
SWITCH_LINK_FLAG_ANEG,
|
||||
SWITCH_LINK_FLAG_TX_FLOW,
|
||||
SWITCH_LINK_FLAG_RX_FLOW,
|
||||
SWITCH_LINK_SPEED,
|
||||
SWITCH_LINK_FLAG_EEE_100BASET,
|
||||
SWITCH_LINK_FLAG_EEE_1000BASET,
|
||||
SWITCH_LINK_ATTR_MAX,
|
||||
};
|
||||
|
||||
#define SWITCH_ATTR_DEFAULTS_OFFSET 0x1000
|
||||
|
||||
|
||||
#endif /* _UAPI_LINUX_SWITCH_H */
|
||||
Loading…
Reference in New Issue
Block a user