openpowerlink.mk 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. ################################################################################
  2. #
  3. # openpowerlink
  4. #
  5. ################################################################################
  6. OPENPOWERLINK_VERSION = 2.7.1
  7. OPENPOWERLINK_SITE = https://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/V$(OPENPOWERLINK_VERSION)
  8. OPENPOWERLINK_SOURCE = openPOWERLINK_V$(OPENPOWERLINK_VERSION).tar.gz
  9. OPENPOWERLINK_LICENSE = BSD-2-Clause, GPL-2.0
  10. OPENPOWERLINK_LICENSE_FILES = license.md
  11. OPENPOWERLINK_INSTALL_STAGING = YES
  12. # The archive has no leading component.
  13. OPENPOWERLINK_STRIP_COMPONENTS = 0
  14. OPENPOWERLINK_MN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_MN),ON,OFF)
  15. OPENPOWERLINK_CN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_CN),ON,OFF)
  16. #### OPLK LIBRARY ####
  17. # Always build a oplk stack
  18. # Disable library with simulation interface
  19. # Disable zynq/FPGA (PCIe) interface
  20. OPENPOWERLINK_CONF_OPTS += -DCFG_OPLK_LIB=ON \
  21. -DCFG_COMPILE_LIB_MN_SIM=OFF \
  22. -DCFG_COMPILE_LIB_CN_SIM=OFF \
  23. -DCFG_COMPILE_LIB_MNAPP_ZYNQINTF=OFF
  24. # All option are ON by default
  25. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y)
  26. OPENPOWERLINK_DEPENDENCIES += libpcap
  27. OPENPOWERLINK_CONF_OPTS += \
  28. -DCFG_COMPILE_LIB_MN=$(OPENPOWERLINK_MN_ONOFF) \
  29. -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \
  30. -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \
  31. -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=OFF \
  32. -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \
  33. -DCFG_COMPILE_LIB_CN=$(OPENPOWERLINK_CN_ONOFF) \
  34. -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \
  35. -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \
  36. -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF \
  37. -DPCAP_CONFIG="$(STAGING_DIR)/usr/bin/pcap-config"
  38. else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y)
  39. OPENPOWERLINK_DEPENDENCIES += libpcap
  40. OPENPOWERLINK_CONF_OPTS += \
  41. -DCFG_COMPILE_LIB_MN=OFF \
  42. -DCFG_COMPILE_LIB_MNAPP_USERINTF=$(OPENPOWERLINK_MN_ONOFF) \
  43. -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \
  44. -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=OFF \
  45. -DCFG_COMPILE_LIB_MNDRV_PCAP=$(OPENPOWERLINK_MN_ONOFF) \
  46. -DCFG_COMPILE_LIB_CN=OFF \
  47. -DCFG_COMPILE_LIB_CNAPP_USERINTF=$(OPENPOWERLINK_CN_ONOFF) \
  48. -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \
  49. -DCFG_COMPILE_LIB_CNDRV_PCAP=$(OPENPOWERLINK_CN_ONOFF) \
  50. -DPCAP_CONFIG="$(STAGING_DIR)/usr/bin/pcap-config"
  51. else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y)
  52. OPENPOWERLINK_CONF_OPTS += \
  53. -DCFG_COMPILE_LIB_MN=OFF \
  54. -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \
  55. -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=$(OPENPOWERLINK_MN_ONOFF) \
  56. -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=OFF \
  57. -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \
  58. -DCFG_COMPILE_LIB_CN=OFF \
  59. -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \
  60. -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=$(OPENPOWERLINK_CN_ONOFF) \
  61. -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF
  62. else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_PCIE_STACK_LIB),y)
  63. OPENPOWERLINK_CONF_OPTS += \
  64. -DCFG_COMPILE_LIB_MN=OFF \
  65. -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \
  66. -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \
  67. -DCFG_COMPILE_LIB_MNAPP_PCIEINTF=$(OPENPOWERLINK_MN_ONOFF) \
  68. -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \
  69. -DCFG_COMPILE_LIB_CN=OFF \
  70. -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \
  71. -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \
  72. -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF
  73. endif
  74. OPENPOWERLINK_CONF_OPTS += \
  75. -DCFG_COMPILE_SHARED_LIBRARY=$(if $(BR2_STATIC_LIBS),OFF,ON)
  76. #### OPLK KERNEL DRIVERS ####
  77. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB)$(BR2_PACKAGE_OPENPOWERLINK_KERNEL_PCIE_DRIVER),y)
  78. OPENPOWERLINK_DEPENDENCIES += linux
  79. OPENPOWERLINK_CONF_OPTS += \
  80. -DCFG_KERNEL_DIR="$(LINUX_DIR)" \
  81. -DCMAKE_SYSTEM_VERSION="$(LINUX_VERSION)" \
  82. -DCFG_OPLK_MN="$(OPENPOWERLINK_MN_ONOFF)" \
  83. -DMAKE_KERNEL_ARCH="$(KERNEL_ARCH)" \
  84. -DMAKE_KERNEL_CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)"
  85. endif
  86. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y)
  87. OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_DRIVERS=ON \
  88. -DCFG_POWERLINK_EDRV_82573=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_82573),ON,OFF) \
  89. -DCFG_POWERLINK_EDRV_8255X=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_8255x),ON,OFF) \
  90. -DCFG_POWERLINK_EDRV_I210=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_I210),ON,OFF) \
  91. -DCFG_POWERLINK_EDRV_8111=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8111),ON,OFF) \
  92. -DCFG_POWERLINK_EDRV_8139=$(if $(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8139),ON,OFF)
  93. else
  94. OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_DRIVERS=OFF
  95. endif
  96. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_PCIE_DRIVER),y)
  97. OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_PCIE_DRIVERS=ON
  98. else
  99. OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_PCIE_DRIVERS=OFF
  100. endif
  101. #### OPLK PCAP DAEMON ####
  102. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y)
  103. OPENPOWERLINK_CONF_OPTS += \
  104. -DCFG_PCAP_DAEMON=ON \
  105. -DCFG_OPLK_MN=$(OPENPOWERLINK_MN_ONOFF)
  106. endif
  107. #### OPLK DEMO APPS ####
  108. # See apps/common/cmake/configure-linux.cmake for available options list.
  109. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y)
  110. OPENPOWERLINK_CONF_OPTS += \
  111. -DCFG_BUILD_KERNEL_STACK="Link to Application"
  112. else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y)
  113. OPENPOWERLINK_CONF_OPTS += \
  114. -DCFG_BUILD_KERNEL_STACK="Linux Userspace Daemon"
  115. else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y)
  116. OPENPOWERLINK_CONF_OPTS += \
  117. -DCFG_BUILD_KERNEL_STACK="Linux Kernel Module"
  118. else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_PCIE_STACK_LIB),y)
  119. OPENPOWERLINK_CONF_OPTS += \
  120. -DCFG_BUILD_KERNEL_STACK="Kernel stack on PCIe card"
  121. endif
  122. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE),y)
  123. OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_MN_CONSOLE=ON \
  124. -DCFG_DEMO_MN_CONSOLE_USE_SYNCTHREAD=ON
  125. else
  126. OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_MN_CONSOLE=OFF
  127. endif
  128. ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_CN_CONSOLE),y)
  129. OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_CN_CONSOLE=ON
  130. else
  131. OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_CN_CONSOLE=OFF
  132. endif
  133. $(eval $(cmake-package))