mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-19 16:40:46 -09:00
Xenomai 3 installs quite some utils and other programs to the target filesystem, many of which will not be used by most users. As it is currently unclear which utils are effectively useful, and as it is undesirable to create config options for each individual util, remove all remaining utils such that only the Xenomai libraries remain. At the point it becomes clear that certain utils _are_ desired by some users, we can identify how to group them in relevant config options. Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
145 lines
4.6 KiB
Makefile
145 lines
4.6 KiB
Makefile
################################################################################
|
|
#
|
|
# xenomai
|
|
#
|
|
################################################################################
|
|
|
|
XENOMAI_VERSION = $(call qstrip,$(BR2_PACKAGE_XENOMAI_VERSION))
|
|
ifeq ($(XENOMAI_VERSION),)
|
|
XENOMAI_VERSION = 3.0.4
|
|
else
|
|
BR_NO_CHECK_HASH_FOR += $(XENOMAI_SOURCE)
|
|
endif
|
|
|
|
XENOMAI_SITE = https://xenomai.org/downloads/xenomai/stable
|
|
XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2
|
|
XENOMAI_LICENSE = GPL-2.0+ with exception (headers), LGPL-2.1+ (libraries), GPL-2.0+ (kernel), GFDL-1.2+ (docs), GPL-2.0 (ipipe patch, can driver)
|
|
# GFDL is not included but refers to gnu.org
|
|
XENOMAI_LICENSE_FILES = debian/copyright include/COPYING kernel/cobalt/COPYING \
|
|
kernel/cobalt/posix/COPYING kernel/cobalt/rtdm/COPYING \
|
|
lib/alchemy/COPYING lib/analogy/COPYING \
|
|
lib/boilerplate/iniparser/LICENSE lib/boilerplate/COPYING \
|
|
lib/cobalt/COPYING lib/copperplate/COPYING lib/psos/COPYING \
|
|
lib/smokey/COPYING lib/trank/COPYING lib/vxworks/COPYING
|
|
|
|
XENOMAI_DEPENDENCIES = host-pkgconf
|
|
|
|
# 0002-boilerplate-build-obstack-support-conditionally.patch
|
|
XENOMAI_AUTORECONF = YES
|
|
|
|
XENOMAI_INSTALL_STAGING = YES
|
|
XENOMAI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-user
|
|
XENOMAI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-user
|
|
|
|
XENOMAI_CONF_OPTS += --includedir=/usr/include/xenomai/ --disable-doc-install
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_MERCURY),y)
|
|
XENOMAI_CONF_OPTS += --with-core=mercury
|
|
else
|
|
XENOMAI_CONF_OPTS += --with-core=cobalt
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_ENABLE_SMP),y)
|
|
XENOMAI_CONF_OPTS += --enable-smp
|
|
else
|
|
XENOMAI_CONF_OPTS += --disable-smp
|
|
endif
|
|
|
|
# Some of these files may be desired by some users -- at that point specific
|
|
# config options need to be added to keep a particular set.
|
|
define XENOMAI_REMOVE_UNNEEDED_FILES
|
|
for i in xeno xeno-config xeno-info wrap-link.sh ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
for i in autotune corectl hdb rtnet nomaccfg rtcfg rtifconfig \
|
|
rtiwconfig rtping rtroute tdmacfg rtps slackspot version; do \
|
|
rm -f $(TARGET_DIR)/usr/sbin/$$i ; \
|
|
done
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_UNNEEDED_FILES
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_TESTSUITE),)
|
|
define XENOMAI_REMOVE_TESTSUITE
|
|
rm -rf $(TARGET_DIR)/usr/share/xenomai/
|
|
for i in clocktest gpiotest latency spitest switchtest \
|
|
xeno-test-run-wrapper dohell xeno-test-run xeno-test ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
rm -rf $(TARGET_DIR)/usr/demo/
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_TESTSUITE
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_RTCAN),)
|
|
define XENOMAI_REMOVE_RTCAN_PROGS
|
|
for i in rtcanrecv rtcansend ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
rm -f $(TARGET_DIR)/usr/sbin/rtcanconfig
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_RTCAN_PROGS
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_ANALOGY),)
|
|
define XENOMAI_REMOVE_ANALOGY
|
|
for i in cmd_read cmd_write cmd_bits insn_read insn_write insn_bits \
|
|
wf_generate ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
for i in analogy_config analogy_calibrate ; do \
|
|
rm -f $(TARGET_DIR)/usr/sbin/$$i ; \
|
|
done
|
|
rm -f $(TARGET_DIR)/usr/lib/libanalogy.*
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_ANALOGY
|
|
endif
|
|
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_NATIVE_SKIN),,alchemy)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_POSIX_SKIN),,posix)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_PSOS_SKIN),,psos)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_RTAI_SKIN),,rtai)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_SMOKEY_SKIN),,smokey)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_UITRON_SKIN),,uitron)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_VXWORKS_SKIN),,vxworks)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_VRTX_SKIN),,vrtx)
|
|
|
|
define XENOMAI_REMOVE_SKINS
|
|
for i in $(XENOMAI_REMOVE_SKIN_LIST) ; do \
|
|
rm -f $(TARGET_DIR)/usr/lib/lib$$i.* ; \
|
|
if [ $$i == "posix" ] ; then \
|
|
rm -f $(TARGET_DIR)/usr/lib/posix.wrappers ; \
|
|
fi ; \
|
|
if [ $$i == "smokey" ] ; then \
|
|
rm -f $(TARGET_DIR)/usr/bin/smokey* ; \
|
|
fi ; \
|
|
done
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_SKINS
|
|
|
|
define XENOMAI_DEVICES
|
|
/dev/rtheap c 666 0 0 10 254 0 0 -
|
|
/dev/rtscope c 666 0 0 10 253 0 0 -
|
|
/dev/rtp c 666 0 0 150 0 0 1 32
|
|
endef
|
|
|
|
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
|
|
XENOMAI_DEPENDENCIES += udev
|
|
|
|
define XENOMAI_INSTALL_UDEV_RULES
|
|
if test -d $(TARGET_DIR)/etc/udev/rules.d ; then \
|
|
for f in $(@D)/ksrc/nucleus/udev/*.rules ; do \
|
|
cp $$f $(TARGET_DIR)/etc/udev/rules.d/ || exit 1 ; \
|
|
done ; \
|
|
fi;
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_INSTALL_UDEV_RULES
|
|
endif # udev
|
|
|
|
$(eval $(autotools-package))
|