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