|
@@ -17,8 +17,74 @@ IPUTILS_LICENSE = GPL-2.0+, BSD-3-Clause
|
|
|
IPUTILS_LICENSE_FILES = LICENSE Documentation/LICENSE.BSD3 Documentation/LICENSE.GPL2
|
|
|
IPUTILS_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES)
|
|
|
|
|
|
+# Selectively build binaries
|
|
|
+IPUTILS_CONF_OPTS += \
|
|
|
+ -DBUILD_CLOCKDIFF=$(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),true,false) \
|
|
|
+ -DBUILD_RARPD=$(if $(BR2_PACKAGE_IPUTILS_RARPD),true,false) \
|
|
|
+ -DBUILD_RDISC=$(if $(BR2_PACKAGE_IPUTILS_RDISC),true,false) \
|
|
|
+ -DBUILD_RDISC_SERVER=$(if $(BR2_PACKAGE_IPUTILS_RDISC_SERVER),true,false) \
|
|
|
+ -DBUILD_TRACEPATH=$(if $(BR2_PACKAGE_IPUTILS_TRACEPATH),true,false) \
|
|
|
+ -DBUILD_TRACEROUTE6=$(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),true,false) \
|
|
|
+ -DBUILD_NINFOD=$(if $(BR2_PACKAGE_IPUTILS_NINFOD),true,false)
|
|
|
+
|
|
|
+#
|
|
|
+# arping
|
|
|
+#
|
|
|
+ifeq ($(BR2_PACKAGE_IPUTILS_ARPING),y)
|
|
|
+IPUTILS_CONF_OPTS += -DBUILD_ARPING=true
|
|
|
+
|
|
|
+# move some binaries to the same location as where Busybox installs
|
|
|
+# the corresponding applets, so that we have a single version of the
|
|
|
+# tools (from iputils)
|
|
|
+define IPUTILS_MOVE_ARPING_BINARY
|
|
|
+ mv $(TARGET_DIR)/usr/bin/arping $(TARGET_DIR)/usr/sbin/arping
|
|
|
+endef
|
|
|
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_ARPING_BINARY
|
|
|
+
|
|
|
+else
|
|
|
+IPUTILS_CONF_OPTS += -DBUILD_ARPING=false
|
|
|
+endif
|
|
|
+
|
|
|
+#
|
|
|
+# ping
|
|
|
+#
|
|
|
+ifeq ($(BR2_PACKAGE_IPUTILS_PING),y)
|
|
|
+IPUTILS_CONF_OPTS += -DBUILD_PING=true
|
|
|
+
|
|
|
+# same reason to move the ping binary as for arping
|
|
|
+ifeq ($(BR2_ROOTFS_MERGED_USR),)
|
|
|
+define IPUTILS_MOVE_PING_BINARY
|
|
|
+ mv $(TARGET_DIR)/usr/bin/ping $(TARGET_DIR)/bin/ping
|
|
|
+endef
|
|
|
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_PING_BINARY
|
|
|
+endif
|
|
|
+
|
|
|
+# upstream requires distros to create symlink
|
|
|
+define IPUTILS_CREATE_PING6_SYMLINK
|
|
|
+ ln -sf $(TARGET_DIR)/bin/ping $(TARGET_DIR)/bin/ping6
|
|
|
+endef
|
|
|
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_CREATE_PING6_SYMLINK
|
|
|
+
|
|
|
+else
|
|
|
+IPUTILS_CONF_OPTS += -DBUILD_PING=false
|
|
|
+endif
|
|
|
+
|
|
|
+#
|
|
|
+# tftpd
|
|
|
+#
|
|
|
+ifeq ($(BR2_PACKAGE_IPUTILS_TFTPD),y)
|
|
|
IPUTILS_CONF_OPTS += -DBUILD_TFTPD=true
|
|
|
|
|
|
+define IPUTILS_MOVE_TFTPD_BINARY
|
|
|
+ mv $(TARGET_DIR)/usr/bin/tftpd $(TARGET_DIR)/usr/sbin/tftpd
|
|
|
+endef
|
|
|
+IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_TFTPD_BINARY
|
|
|
+
|
|
|
+else
|
|
|
+IPUTILS_CONF_OPTS += -DBUILD_TFTPD=false
|
|
|
+endif
|
|
|
+
|
|
|
+# Handle libraries
|
|
|
ifeq ($(BR2_PACKAGE_LIBCAP),y)
|
|
|
IPUTILS_CONF_OPTS += -DUSE_CAP=true
|
|
|
IPUTILS_DEPENDENCIES += libcap
|
|
@@ -37,63 +103,41 @@ ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
|
|
IPUTILS_DEPENDENCIES += systemd
|
|
|
endif
|
|
|
|
|
|
-# ninfod requires <pthread.h>
|
|
|
-ifneq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
|
|
|
-IPUTILS_NINFOD = n
|
|
|
-endif
|
|
|
-
|
|
|
-ifeq ($(IPUTILS_NINFOD),n)
|
|
|
-IPUTILS_CONF_OPTS += -DBUILD_NINFOD=false
|
|
|
-else
|
|
|
-IPUTILS_CONF_OPTS += -DBUILD_NINFOD=true
|
|
|
-endif
|
|
|
-
|
|
|
ifeq ($(BR2_SYSTEM_ENABLE_NLS),y)
|
|
|
IPUTILS_CONF_OPTS += -DUSE_GETTEXT=true
|
|
|
else
|
|
|
IPUTILS_CONF_OPTS += -DUSE_GETTEXT=false
|
|
|
endif
|
|
|
|
|
|
-IPUTILS_CONF_OPTS += -DBUILD_TRACEROUTE6=true
|
|
|
-
|
|
|
# XSL Stylesheets for DocBook 5 not packaged for buildroot
|
|
|
IPUTILS_CONF_OPTS += -DBUILD_MANS=false -DBUILD_HTML_MANS=false
|
|
|
|
|
|
-# move iputils binaries to the same location as where Busybox installs
|
|
|
-# the corresponding applets, so that we have a single version of the
|
|
|
-# tools (from iputils)
|
|
|
-define IPUTILS_MOVE_BINARIES
|
|
|
- mv $(TARGET_DIR)/usr/bin/arping $(TARGET_DIR)/usr/sbin/arping
|
|
|
- $(if $(BR2_ROOTFS_MERGED_USR),,\
|
|
|
- mv $(TARGET_DIR)/usr/bin/ping $(TARGET_DIR)/bin/ping)
|
|
|
- mv $(TARGET_DIR)/usr/bin/tftpd $(TARGET_DIR)/usr/sbin/tftpd
|
|
|
-endef
|
|
|
-IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_MOVE_BINARIES
|
|
|
-
|
|
|
-# upstream requires distros to create symlink
|
|
|
-define IPUTILS_CREATE_PING6_SYMLINK
|
|
|
- ln -sf ping $(TARGET_DIR)/bin/ping6
|
|
|
-endef
|
|
|
-IPUTILS_POST_INSTALL_TARGET_HOOKS += IPUTILS_CREATE_PING6_SYMLINK
|
|
|
-
|
|
|
# handle permissions ourselves
|
|
|
IPUTILS_CONF_OPTS += -DNO_SETCAP_OR_SUID=true
|
|
|
ifeq ($(BR2_ROOTFS_DEVICE_TABLE_SUPPORTS_EXTENDED_ATTRIBUTES),y)
|
|
|
define IPUTILS_PERMISSIONS
|
|
|
- /usr/sbin/arping f 755 0 0 - - - - -
|
|
|
- /usr/bin/clockdiff f 755 0 0 - - - - -
|
|
|
- |xattr cap_net_raw+p
|
|
|
- /bin/ping f 755 0 0 - - - - -
|
|
|
- |xattr cap_net_raw+p
|
|
|
- /usr/bin/traceroute6 f 755 0 0 - - - - -
|
|
|
- |xattr cap_net_raw+p
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_ARPING),\
|
|
|
+ /usr/sbin/arping f 755 0 0 - - - - -,)
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),\
|
|
|
+ /usr/bin/clockdiff f 755 0 0 - - - - -
|
|
|
+ |xattr cap_net_raw+p,)
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_PING),\
|
|
|
+ /bin/ping f 755 0 0 - - - - -
|
|
|
+ |xattr cap_net_raw+p,)
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),\
|
|
|
+ /usr/bin/traceroute6 f 755 0 0 - - - - -
|
|
|
+ |xattr cap_net_raw+p,)
|
|
|
endef
|
|
|
else
|
|
|
define IPUTILS_PERMISSIONS
|
|
|
- /usr/sbin/arping f 755 0 0 - - - - -
|
|
|
- /usr/bin/clockdiff f 4755 0 0 - - - - -
|
|
|
- /bin/ping f 4755 0 0 - - - - -
|
|
|
- /usr/bin/traceroute6 f 4755 0 0 - - - - -
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_ARPING),\
|
|
|
+ /usr/sbin/arping f 755 0 0 - - - - -,)
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),\
|
|
|
+ /usr/bin/clockdiff f 4755 0 0 - - - - -,)
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_PING),\
|
|
|
+ /bin/ping f 4755 0 0 - - - - -,)
|
|
|
+ $(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),\
|
|
|
+ /usr/bin/traceroute6 f 4755 0 0 - - - - -,)
|
|
|
endef
|
|
|
endif
|
|
|
|