df8fa1712c
Xenomai used to have commented out devices to be created in the device table that the user had to uncomment. Use the new infrastructure to do just that. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
123 lines
3.5 KiB
Makefile
123 lines
3.5 KiB
Makefile
#############################################################
|
|
# Xenomai
|
|
# URL : http://xenomai.org
|
|
# NOTE : Real-Time Framework for Linux
|
|
#
|
|
#############################################################
|
|
|
|
XENOMAI_VERSION = $(call qstrip,$(BR2_PACKAGE_XENOMAI_VERSION))
|
|
ifeq ($(XENOMAI_VERSION),)
|
|
XENOMAI_VERSION = 2.6.0
|
|
endif
|
|
|
|
XENOMAI_SITE = http://download.gna.org/xenomai/stable/
|
|
XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2
|
|
|
|
XENOMAI_INSTALL_STAGING = YES
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_SMP),y)
|
|
XENOMAI_CONF_OPT += --enable-smp
|
|
endif
|
|
|
|
XENOMAI_CONF_OPT += --includedir=/usr/include/xenomai/
|
|
|
|
ifeq ($(BR2_HAVE_DEVFILES),)
|
|
define XENOMAI_REMOVE_DEVFILES
|
|
for i in xeno-config xeno-info wrap-link.sh ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_DEVFILES
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_XENOMAI_TESTSUITE),)
|
|
define XENOMAI_REMOVE_TESTSUITE
|
|
rm -rf $(TARGET_DIR)/usr/share/xenomai/
|
|
for i in klatency rtdm xeno xeno-load check-vdso \
|
|
irqloop cond-torture-posix switchtest arith \
|
|
sigtest clocktest cyclictest latency wakeup-time \
|
|
xeno-test cond-torture-native mutex-torture-posix \
|
|
mutex-torture-native ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
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_bits cmd_read cmd_write insn_write \
|
|
insn_bits insn_read ; do \
|
|
rm -f $(TARGET_DIR)/usr/bin/$$i ; \
|
|
done
|
|
rm -f $(TARGET_DIR)/usr/sbin/analogy_config
|
|
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),,native)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_POSIX_SKIN),,posix)
|
|
XENOMAI_REMOVE_SKIN_LIST += $(if $(BR2_PACKAGE_XENOMAI_VXWORKS_SKIN),,vxworks)
|
|
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_UITRON_SKIN),,uitron)
|
|
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 ; \
|
|
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_ROOTFS_DEVICE_CREATION_DYNAMIC_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/ ; \
|
|
done ; \
|
|
fi;
|
|
endef
|
|
|
|
XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_INSTALL_UDEV_RULES
|
|
endif # udev
|
|
|
|
define XENOMAI_REMOVE_UDEV_RULES
|
|
if test -d $(TARGET_DIR)/etc/udev/rules.d ; then \
|
|
for f in $(@D)/ksrc/nucleus/udev/*.rules ; do \
|
|
rm -f $(TARGET_DIR)/etc/udev/rules.d/$$f ; \
|
|
done ; \
|
|
fi;
|
|
endef
|
|
|
|
XENOMAI_POST_UNINSTALL_TARGET_HOOKS += XENOMAI_REMOVE_UDEV_RULES
|
|
|
|
$(eval $(call AUTOTARGETS))
|