summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--make/bridge.mk42
2 files changed, 43 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 1e40cb6ba..0b8a1f0a6 100644
--- a/Makefile
+++ b/Makefile
@@ -110,7 +110,7 @@ TARGETS+=busybox tinylogin
#TARGETS+=valgrind
# Some stuff for access points and firewalls
-#TARGETS+=iptables hostap wtools dhcp_relay
+#TARGETS+=iptables hostap wtools dhcp_relay bridge
# Run customize.mk at the very end to add your own special config.
# This is useful for making your own distro within the buildroot
diff --git a/make/bridge.mk b/make/bridge.mk
new file mode 100644
index 000000000..f84b1b46f
--- /dev/null
+++ b/make/bridge.mk
@@ -0,0 +1,42 @@
+#############################################################
+#
+# bridgeutils - User Space Program For Controling Bridging
+#
+#############################################################
+#
+BRIDGE_SOURCE_URL=http://bridge.sourceforge.net/bridge-utils
+BRIDGE_SOURCE=bridge-utils-0.9.6.tar.gz
+BRIDGE_BUILD_DIR=$(BUILD_DIR)/bridge-utils-0.9.6
+
+$(DL_DIR)/$(BRIDGE_SOURCE):
+ $(WGET) -P $(DL_DIR) $(BRIDGE_SOURCE_URL)/$(BRIDGE_SOURCE)
+
+$(BRIDGE_BUILD_DIR)/.unpacked: $(DL_DIR)/$(BRIDGE_SOURCE)
+ zcat $(DL_DIR)/$(BRIDGE_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ mv -f $(BUILD_DIR)/bridge-utils $(BRIDGE_BUILD_DIR)
+ touch $(BRIDGE_BUILD_DIR)/.unpacked
+
+$(BRIDGE_BUILD_DIR)/.configured: $(BRIDGE_BUILD_DIR)/.unpacked
+ (cd $(BRIDGE_BUILD_DIR); rm -rf config.cache; \
+ PATH=$(TARGET_PATH) CC=$(TARGET_CC) \
+ ./configure \
+ --with-linux-headers=$(BUILD_DIR)/linux \
+ );
+
+ touch $(BRIDGE_BUILD_DIR)/.configured
+
+$(BRIDGE_BUILD_DIR)/brctl/brctl: $(BRIDGE_BUILD_DIR)/.configured
+ $(MAKE) -C $(BRIDGE_BUILD_DIR) CC=$(TARGET_CC)
+
+$(TARGET_DIR)/sbin/brctl: $(BRIDGE_BUILD_DIR)/brctl/brctl
+ cp -af $(BRIDGE_BUILD_DIR)/brctl/brctl $(TARGET_DIR)/sbin/
+ cp -af $(BRIDGE_BUILD_DIR)/brctl/brctld $(TARGET_DIR)/sbin/
+
+bridge: $(TARGET_DIR)/sbin/brctl
+
+bridge-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(BRIDGE_BUILD_DIR) uninstall
+ -$(MAKE) -C $(BRIDGE_BUILD_DIR) clean
+
+bridge-dirclean:
+ rm -rf $(BRIDGE_BUILD_DIR)