All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2
@ 2015-08-07 13:28 Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 1/4] package/openpowerlink: bump to v2.2.0 Romain Naour
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Romain Naour @ 2015-08-07 13:28 UTC (permalink / raw)
  To: buildroot

From doc/openpowerlink.md:
"The openPOWERLINK release V2.X is an evolution of the openPOWERLINK V1 stack.
Running the kernel and user layers of openPOWERLINK on different processors in
a multi-processor/multi-platform architecture, required fundamental changes in
the Communication Abstraction Layer. Additionally, the existing code base was
greatly improved so that it is easier to understand and maintain. Due to these
reasons a new major release was started."

The openpowerlink2 package archive contains several cmake projects,
and each of them must be packaged separately in Buildroot.

"With version 2.0, the source code has been cleanly split into an
application-oriented user library and a time-critical stack driver."

This complicates the packaging but it helps to refine the dependencies
compared to openpowerlink v1 build system.
(openpowerlink v1 requires C++ only for the qt demo)

The openpowerlink package provide all patches which should be used by
other openpowerlink-* packages by using an patch hook.
Doing this avoids patches duplication over all sub-packages.

All patches fix several issues with the cmake build system and will be
submitted upstream.

There is one project for the EPL (Ethernet PowerLink) stack
libraries wich provides:
 * an user space EPL stack to be linked into application
 * an user space EPL stack pcap daemon
 * an kernel space EPL library interface

There are two projects for the EPL network driver:
 * pcap daemon driver
 * kernel module driver.

Note: On x86/x86_64 only few EPL ethernet driver are available for
the EPL kernel stack implementation:
 * Intel 82573
 * Intel 8255x
 * Intel I210
 * Realtek RTL-8111/8168 (new since V2.1.0)
 * Realtek RTL-8139

There is one project for each demo application:
 * demo_cn_embedded
 * demo_mn_embedded
 * demo_cn_console
 * demo_mn_console
 * demo_mn_qt

Only demo_mn_console will be packaged in Buildroot for now.

[1] http://sourceforge.net/p/openpowerlink/discussion/newbie/thread/3f13af65/

Romain Naour (4):
  package/openpowerlink: bump to v2.2.0
  package/openpowerlink-kernel-drivers: new package
  package/openpowerlink-pcap-daemon: new package
  package/openpowerlink-apps-demo-mn-console: new package

 package/Config.in                                  |   3 +
 .../openpowerlink-apps-demo-mn-console/Config.in   |   6 +
 .../openpowerlink-apps-demo-mn-console.hash        |   1 +
 .../openpowerlink-apps-demo-mn-console.mk          |  50 +++++++
 package/openpowerlink-kernel-drivers/Config.in     |  33 +++++
 .../openpowerlink-kernel-drivers.hash              |   1 +
 .../openpowerlink-kernel-drivers.mk                |  54 +++++++
 package/openpowerlink-pcap-daemon/Config.in        |  12 ++
 .../openpowerlink-pcap-daemon.hash                 |   1 +
 .../openpowerlink-pcap-daemon.mk                   |  38 +++++
 ...a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch | 158 +++++++++++++++++++++
 ...a-better-regex-for-cmake-system-processor.patch |  89 ------------
 ...l-the-stack-libraries-to-lib-subdirectory.patch | 133 +++++++++++++++++
 ...-fix-user-space-stack-enable-shared-build.patch |  54 -------
 ...0003-FIX-cmake-install-oplk-headers-files.patch |  34 +++++
 ...-FIX-Fix-name-of-sched_priority-element-2.patch |  96 +++++++++++++
 .../0005-FIX-add-missing-header-sys-time.h.patch   |  47 ++++++
 package/openpowerlink/Config.in                    | 116 ++++++---------
 package/openpowerlink/openpowerlink.hash           |   3 +
 package/openpowerlink/openpowerlink.mk             | 104 +++++++-------
 20 files changed, 763 insertions(+), 270 deletions(-)
 create mode 100644 package/openpowerlink-apps-demo-mn-console/Config.in
 create mode 120000 package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.hash
 create mode 100644 package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.mk
 create mode 100644 package/openpowerlink-kernel-drivers/Config.in
 create mode 120000 package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.hash
 create mode 100644 package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.mk
 create mode 100644 package/openpowerlink-pcap-daemon/Config.in
 create mode 120000 package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.hash
 create mode 100644 package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.mk
 create mode 100644 package/openpowerlink/0001-FIX-use-a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch
 delete mode 100644 package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch
 create mode 100644 package/openpowerlink/0002-FIX-install-the-stack-libraries-to-lib-subdirectory.patch
 delete mode 100644 package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch
 create mode 100644 package/openpowerlink/0003-FIX-cmake-install-oplk-headers-files.patch
 create mode 100644 package/openpowerlink/0004-FIX-Fix-name-of-sched_priority-element-2.patch
 create mode 100644 package/openpowerlink/0005-FIX-add-missing-header-sys-time.h.patch
 create mode 100644 package/openpowerlink/openpowerlink.hash

-- 
2.4.3

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCHv3 1/4] package/openpowerlink: bump to v2.2.0
  2015-08-07 13:28 [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
@ 2015-08-07 13:29 ` Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 2/4] package/openpowerlink-kernel-drivers: new package Romain Naour
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Romain Naour @ 2015-08-07 13:29 UTC (permalink / raw)
  To: buildroot

This package provide only the stack libraries due to
a build system refactoring. Kernel drivers, user space
daemon and demos application will be packaged separately.

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
v3: Add patch info about patches status
    bump to v2.2.0
    remove old openpowerlink stack (v1.8.5)
    Rename openpowerlin2 to openpowerlink
    fix build with musl toolchains
v2: switch to tar.gz archive
    add hash file
    merge openpowerlink2 and openpowerlink2-stack
    Add a new patch to install headers files
    add OPENPOWERLINK2_*_ONOFF
---
 ...a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch | 158 +++++++++++++++++++++
 ...a-better-regex-for-cmake-system-processor.patch |  89 ------------
 ...l-the-stack-libraries-to-lib-subdirectory.patch | 133 +++++++++++++++++
 ...-fix-user-space-stack-enable-shared-build.patch |  54 -------
 ...0003-FIX-cmake-install-oplk-headers-files.patch |  34 +++++
 ...-FIX-Fix-name-of-sched_priority-element-2.patch |  96 +++++++++++++
 .../0005-FIX-add-missing-header-sys-time.h.patch   |  47 ++++++
 package/openpowerlink/Config.in                    | 114 +++++----------
 package/openpowerlink/openpowerlink.hash           |   3 +
 package/openpowerlink/openpowerlink.mk             | 104 +++++++-------
 10 files changed, 562 insertions(+), 270 deletions(-)
 create mode 100644 package/openpowerlink/0001-FIX-use-a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch
 delete mode 100644 package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch
 create mode 100644 package/openpowerlink/0002-FIX-install-the-stack-libraries-to-lib-subdirectory.patch
 delete mode 100644 package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch
 create mode 100644 package/openpowerlink/0003-FIX-cmake-install-oplk-headers-files.patch
 create mode 100644 package/openpowerlink/0004-FIX-Fix-name-of-sched_priority-element-2.patch
 create mode 100644 package/openpowerlink/0005-FIX-add-missing-header-sys-time.h.patch
 create mode 100644 package/openpowerlink/openpowerlink.hash

diff --git a/package/openpowerlink/0001-FIX-use-a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch b/package/openpowerlink/0001-FIX-use-a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch
new file mode 100644
index 0000000..597f2ca
--- /dev/null
+++ b/package/openpowerlink/0001-FIX-use-a-better-regex-for-CMAKE_SYSTEM_PROCESSOR.patch
@@ -0,0 +1,158 @@
+From af32be7a321860310148d75bbe178fc9f19e31ed Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Thu, 23 Apr 2015 14:34:08 +0200
+Subject: [PATCH] [FIX] use a better regex for CMAKE_SYSTEM_PROCESSOR
+
+According to CMake doc, CMAKE_SYSTEM_PROCESSOR is set to the
+output of the command "uname -p" (in fact it is the output of "uname
+-m"). This is only true for native compilation.
+
+In the case of cross-compilation, the CMake code does not set anything,
+it just expects the CMAKE_SYSTEM_* variables to be set in the
+toolchain file.
+
+Add a test matching the patern "^i.86$" and keep the old one "x86" for
+compatibility.
+By doing that, factorize this test using "^(i.86|x86(_64)?)$".
+
+Thanks to Samuel Martin [1].
+
+The issue has been reported [2] upstream an this patch will be merged
+for the next release.
+
+[1] http://lists.busybox.net/pipermail/buildroot/2014-November/112163.html
+[2] http://sourceforge.net/p/openpowerlink/discussion/newbie/thread/3f13af65/#8f80/9f7c
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ drivers/linux/drv_kernelmod_edrv/CMakeLists.txt         | 2 +-
+ stack/proj/linux/liboplkcn/CMakeLists.txt               | 2 +-
+ stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt | 2 +-
+ stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt   | 2 +-
+ stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt       | 2 +-
+ stack/proj/linux/liboplkmn/CMakeLists.txt               | 2 +-
+ stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt | 2 +-
+ stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt   | 2 +-
+ stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt       | 2 +-
+ 9 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt
+index 1f09b09..363a54e 100644
+--- a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt
++++ b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt
+@@ -228,7 +228,7 @@ ELSE()
+     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${KERNEL_SOURCE_DIR}/timer/hrestimer-linuxkernel.c)
+ ENDIF()
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${COMMON_SOURCE_DIR}/ami/amix86.c)
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${COMMON_SOURCE_DIR}/ami/amile.c)
+diff --git a/stack/proj/linux/liboplkcn/CMakeLists.txt b/stack/proj/linux/liboplkcn/CMakeLists.txt
+index ac4b595..b7c73e6 100644
+--- a/stack/proj/linux/liboplkcn/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcn/CMakeLists.txt
+@@ -65,7 +65,7 @@ SET (LIB_SOURCES
+      ${MEMMAP_NULL_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt
+index 7887fce..6c3bec6 100644
+--- a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt
+@@ -58,7 +58,7 @@ SET (LIB_SOURCES
+      ${MEMMAP_NULL_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt
+index 4df9d9d..fdf6fd4 100644
+--- a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt
+@@ -58,7 +58,7 @@ SET (LIB_SOURCES
+      ${MEMMAP_NULL_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt
+index a48b9d6..440f02c 100644
+--- a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt
+@@ -54,7 +54,7 @@ SET (LIB_SOURCES
+      ${CIRCBUF_POSIX_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkmn/CMakeLists.txt b/stack/proj/linux/liboplkmn/CMakeLists.txt
+index bddcf9d..8f97144 100644
+--- a/stack/proj/linux/liboplkmn/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmn/CMakeLists.txt
+@@ -66,7 +66,7 @@ SET (LIB_SOURCES
+      ${MEMMAP_NULL_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt
+index b0cabcc..df74265 100644
+--- a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt
+@@ -59,7 +59,7 @@ SET (LIB_SOURCES
+      ${MEMMAP_NULL_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt
+index 369a46d..98835c7 100644
+--- a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt
+@@ -59,7 +59,7 @@ SET (LIB_SOURCES
+      ${MEMMAP_NULL_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+diff --git a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt
+index ca5c403..b4dd41b 100644
+--- a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt
+@@ -54,7 +54,7 @@ SET (LIB_SOURCES
+      ${CIRCBUF_POSIX_SOURCES}
+      )
+ 
+-IF((CMAKE_SYSTEM_PROCESSOR MATCHES x86*) OR (CMAKE_SYSTEM_PROCESSOR MATCHES i686))
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_X86_SOURCES})
+ ELSEIF(CMAKE_SYSTEM_PROCESSOR MATCHES arm*)
+     SET(LIB_SOURCES ${LIB_SOURCES} ${ARCH_LE_SOURCES})
+-- 
+2.4.3
+
diff --git a/package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch b/package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch
deleted file mode 100644
index 6fd1990..0000000
--- a/package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From 9fd3aef2f9bb7a2b05b6823281bb5c988fa25149 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Mon, 17 Nov 2014 23:27:05 +0100
-Subject: [PATCH 1/2] [FIX] use a better regex for CMAKE_SYSTEM_PROCESSOR
-
-According to CMake doc, CMAKE_SYSTEM_PROCESSOR is set to the
-output of the command "uname -p" (in fact it is the output of "uname
--m"). This is only true for native compilation.
-
-In the case of cross-compilation, the CMake code does not set anything,
-it just expects the CMAKE_SYSTEM_* variables to be set in the
-toolchain file.
-
-Add a test matching the patern "^i.86$" and keep the old one "x86" for
-compatibility.
-By doing that, factorize this test using "^(i.86|x86(_64)?)$".
-
-Thanks to Samuel Martin [1]
-[1] http://lists.busybox.net/pipermail/buildroot/2014-November/112163.html
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt         | 15 ++++-----------
- .../X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt  | 15 ++++-----------
- 2 files changed, 8 insertions(+), 22 deletions(-)
-
-diff --git a/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt b/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt
-index 271ecdc..b49ef53 100644
---- a/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt
-+++ b/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt
-@@ -154,21 +154,14 @@ SET(MODULE_SOURCE_FILES
-     ${POWERLINK_SOURCE_DIR}/ObjDicts/${OBJDICT}/Objdict.c
- )
- 
--IF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86)
-+IF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
-     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c)
--
--ELSEIF (   CMAKE_SYSTEM_PROCESSOR STREQUAL arm
--        OR CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l)
-+ELSEIF (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7l")
-     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amiarm.c)
--
--ELSEIF (   CMAKE_SYSTEM_PROCESSOR STREQUAL i686
--    OR CMAKE_SYSTEM_PROCESSOR STREQUAL x86_64)
--    SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c)
--
--ELSE (CMAKE_SYSTEM_PROCESSOR STREQUAL x86)
-+ELSE (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
-     MESSAGE(FATAL_ERROR
-             "ami: CMAKE_SYSTEM_PROCESSOR is set to ${CMAKE_SYSTEM_PROCESSOR}. Valid targets are (x86, x86_64, arm, armv7l, i686).")
--ENDIF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86)
-+ENDIF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
- 
- SET(MODULE_FILE
-     ${MODULE_NAME}.ko
-diff --git a/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt b/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt
-index 1b47c76..f534a4d 100644
---- a/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt
-+++ b/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt
-@@ -171,21 +171,14 @@ ELSE(CFG_POWERLINK_EDRV STREQUAL "I210")
-     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/Target/X86/Linux/gnu/generic/TimerHighReskX86.c)
- ENDIF(CFG_POWERLINK_EDRV STREQUAL "I210")
- 
--IF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86)
-+IF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
-     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c)
--
--ELSEIF (   CMAKE_SYSTEM_PROCESSOR STREQUAL arm
--        OR CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l)
-+ELSEIF (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7l")
-     SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amiarm.c)
--
--ELSEIF (   CMAKE_SYSTEM_PROCESSOR STREQUAL i686
--	OR CMAKE_SYSTEM_PROCESSOR STREQUAL x86_64)
--    SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c)
--
--ELSE (CMAKE_SYSTEM_PROCESSOR STREQUAL x86)
-+ELSE (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
-     MESSAGE(FATAL_ERROR
-             "ami: CMAKE_SYSTEM_PROCESSOR is set to ${CMAKE_SYSTEM_PROCESSOR}. Valid targets are (x86, x86_64, arm, armv7l, i686).")
--ENDIF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86)
-+ENDIF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$")
- 
- SET(MODULE_FILE
-     ${MODULE_NAME}.ko
--- 
-1.9.3
-
diff --git a/package/openpowerlink/0002-FIX-install-the-stack-libraries-to-lib-subdirectory.patch b/package/openpowerlink/0002-FIX-install-the-stack-libraries-to-lib-subdirectory.patch
new file mode 100644
index 0000000..98ed007
--- /dev/null
+++ b/package/openpowerlink/0002-FIX-install-the-stack-libraries-to-lib-subdirectory.patch
@@ -0,0 +1,133 @@
+From 08ef3113a9fb5beb6e06bdbc9cb5c71bacb7441a Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Fri, 1 May 2015 12:19:34 +0200
+Subject: [PATCH] [FIX] install the stack libraries to "lib" subdirectory
+
+Using '.' to install the stack libraries is not correct since
+it will install them to /usr/.
+
+ls /usr/liboplkmnapp-kernelintf.so
+
+Fix this by using 'lib' instead of '.'
+
+The problem with the openpowerlink build system is that it expect
+the stack directory to be a "local staging" directory which
+contains headers and libraries. So the libraries build by the
+stack project are installed in stack/lib by default.
+
+This is wrong to do that because it becomes difficult to package
+openpowerlink for normal Linux systems.
+
+Buildroot like others build system expect from a packaged software
+to install libraries and headers build/provided in a staging
+directory.
+
+It seems that CMAKE_INSTALL_PREFIX is misused by the default value
+"${CMAKE_CURRENT_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR}"
+since it already contains the lib directory and therefore the
+entire build system is messed up.
+
+It seems that the openpowerlink's build system doesn't allow/support
+CMAKE_INSTALL_PREFIX to be set externally
+(which is the standard approach).
+
+The issue has been reported [1] upstream and a build system
+refactoring is needed to fix this properly.
+
+[1] http://sourceforge.net/p/openpowerlink/discussion/newbie/thread/3f13af65/#8f80/a50a/4649/f07c
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ stack/proj/linux/liboplkcn/CMakeLists.txt               | 2 +-
+ stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt | 2 +-
+ stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt   | 2 +-
+ stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt       | 2 +-
+ stack/proj/linux/liboplkmn/CMakeLists.txt               | 2 +-
+ stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt | 2 +-
+ stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt   | 2 +-
+ stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt       | 2 +-
+ 8 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/stack/proj/linux/liboplkcn/CMakeLists.txt b/stack/proj/linux/liboplkcn/CMakeLists.txt
+index b7c73e6..23e3112 100644
+--- a/stack/proj/linux/liboplkcn/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcn/CMakeLists.txt
+@@ -88,4 +88,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt
+index 6c3bec6..a6f9271 100644
+--- a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt
+@@ -81,4 +81,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt
+index fdf6fd4..6df8bb7 100644
+--- a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt
+@@ -81,4 +81,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt
+index 440f02c..6ffcbe9 100644
+--- a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt
++++ b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt
+@@ -77,4 +77,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkmn/CMakeLists.txt b/stack/proj/linux/liboplkmn/CMakeLists.txt
+index 8f97144..e29f795 100644
+--- a/stack/proj/linux/liboplkmn/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmn/CMakeLists.txt
+@@ -92,4 +92,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt
+index df74265..2ba1cd1 100644
+--- a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt
+@@ -85,4 +85,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt
+index 98835c7..12b3dc6 100644
+--- a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt
+@@ -85,4 +85,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+diff --git a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt
+index b4dd41b..cf875ca 100644
+--- a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt
++++ b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt
+@@ -80,4 +80,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES})
+ TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
+ SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d")
+-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .)
++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+-- 
+2.4.3
+
diff --git a/package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch b/package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch
deleted file mode 100644
index 2345594..0000000
--- a/package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 9c11eef037dc1137ab7a4656e45afde7d1a615c4 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Sat, 22 Nov 2014 16:38:01 +0100
-Subject: [PATCH 2/2] [FIX]: user space stack: enable dynamic build
-
-The build fail if BUILD_SHARED_LIBS is set to ON.
-
-Depending on BUILD_SHARED_LIBS, link with STATIC or SHARED.
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt b/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt
-index 40b7756..27360f2 100644
---- a/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt
-+++ b/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt
-@@ -93,7 +93,13 @@ ENDIF(CFG_STORE_RESTORE)
- #
- # Set type of library
- #
--IF (WIN32)
-+IF (UNIX)
-+    IF (BUILD_SHARED_LIBS)
-+        SET(LIB_TYPE "SHARED")
-+    ELSE (BUILD_SHARED_LIBS)
-+        SET(LIB_TYPE "STATIC")
-+    ENDIF(BUILD_SHARED_LIBS)
-+ELSEIF (WIN32)
-     IF(CFG_X86_WINDOWS_DLL)
-         SET(LIB_TYPE "SHARED")
-     ELSE(CFG_X86_WINDOWS_DLL)
-@@ -313,7 +319,7 @@ ENDIF ()
- # Define library source code
- #
- IF (UNIX)
--    ADD_LIBRARY(powerlink ${LIB_SOURCES} ${LIB_SOURCES_KERNEL} ${LIB_SOURCES_USER} ${LIB_HEADERS} ${LIB_HEADERS_KERNEL} ${LIB_HEADERS_USER} ${LIB_OBJDICT})
-+    ADD_LIBRARY(powerlink ${LIB_TYPE} ${LIB_SOURCES} ${LIB_SOURCES_KERNEL} ${LIB_SOURCES_USER} ${LIB_HEADERS} ${LIB_HEADERS_KERNEL} ${LIB_HEADERS_USER} ${LIB_OBJDICT})
- 
-     SET_PROPERTY(TARGET powerlink
-                  PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL})
-@@ -330,7 +336,7 @@ ENDIF ()
- # Installation
- #
- IF (UNIX)
--    INSTALL(TARGETS powerlink ARCHIVE DESTINATION lib)
-+    INSTALL(TARGETS powerlink ARCHIVE DESTINATION lib LIBRARY DESTINATION lib COMPONENT library)
- ELSEIF (WIN32)
-     IF (CFG_X86_WINDOWS_DLL)
-         INSTALL(TARGETS openPOWERLINK RUNTIME DESTINATION bin)
--- 
-1.9.3
-
diff --git a/package/openpowerlink/0003-FIX-cmake-install-oplk-headers-files.patch b/package/openpowerlink/0003-FIX-cmake-install-oplk-headers-files.patch
new file mode 100644
index 0000000..5950986
--- /dev/null
+++ b/package/openpowerlink/0003-FIX-cmake-install-oplk-headers-files.patch
@@ -0,0 +1,34 @@
+From 3fe4bf46e395b7b2e87e91850fa638ed86670f41 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Mon, 4 May 2015 11:47:05 +0200
+Subject: [PATCH] [FIX] cmake: install oplk headers files
+
+In order to be able to link a third paries application
+with openpowerlink libraries, we need to install oplk
+headers files related to openpowerlink stack.
+
+Install all headers file from STACK_INCLUDE_DIR/oplk.
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+v4: install only include/oplk directory
+---
+ stack/CMakeLists.txt | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/stack/CMakeLists.txt b/stack/CMakeLists.txt
+index 9ff13f4..f4614cd 100644
+--- a/stack/CMakeLists.txt
++++ b/stack/CMakeLists.txt
+@@ -103,3 +103,8 @@ ELSEIF((CMAKE_SYSTEM_NAME STREQUAL "Generic") AND (CMAKE_SYSTEM_PROCESSOR STREQU
+ ELSE()
+     MESSAGE(FATAL_ERROR "Unknown Platform and processor combination ${CMAKE_SYSTEM_NAME} and ${CMAKE_SYSTEM_PROCESSOR}!!")
+ ENDIF()
++
++################################################################################
++# Install oplk headers files
++################################################################################
++INSTALL(DIRECTORY ${STACK_INCLUDE_DIR}/oplk DESTINATION "include")
+-- 
+2.4.3
+
diff --git a/package/openpowerlink/0004-FIX-Fix-name-of-sched_priority-element-2.patch b/package/openpowerlink/0004-FIX-Fix-name-of-sched_priority-element-2.patch
new file mode 100644
index 0000000..e7ad2c0
--- /dev/null
+++ b/package/openpowerlink/0004-FIX-Fix-name-of-sched_priority-element-2.patch
@@ -0,0 +1,96 @@
+From 476dd275076bfb313ca7b5f1a1de722548b24219 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Fri, 7 Aug 2015 14:45:30 +0200
+Subject: [PATCH] [FIX] Fix name of sched_priority element (2)
+
+commit 6212747994ff00c06d7285777ea194e725e62011 already
+removed __sched_priority but a merge between develop-2.1
+and develop-2.2 readded some of them.
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ drivers/linux/drv_daemon_pcap/daemon.c                  | 4 ++--
+ stack/src/kernel/edrv/edrv-pcap_linux.c                 | 2 +-
+ stack/src/kernel/timer/hrestimer-posix.c                | 2 +-
+ stack/src/kernel/timer/hrestimer-posix_clocknanosleep.c | 2 +-
+ stack/src/user/event/eventucal-linuxioctl.c             | 4 ++--
+ 5 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/linux/drv_daemon_pcap/daemon.c b/drivers/linux/drv_daemon_pcap/daemon.c
+index c06caea..06e259b 100644
+--- a/drivers/linux/drv_daemon_pcap/daemon.c
++++ b/drivers/linux/drv_daemon_pcap/daemon.c
+@@ -142,11 +142,11 @@ int  main (int argc, char** argv)
+     {
+         DEBUG_LVL_ERROR_TRACE("%s() couldn't set nice value! (%s)\n", __func__, strerror(errno));
+     }
+-    schedParam.__sched_priority = MAIN_THREAD_PRIORITY;
++    schedParam.sched_priority = MAIN_THREAD_PRIORITY;
+     if (pthread_setschedparam(pthread_self(), SCHED_RR, &schedParam) != 0)
+     {
+         DEBUG_LVL_ERROR_TRACE("%s() couldn't set thread scheduling parameters! %d\n",
+-                              __func__, schedParam.__sched_priority);
++                              __func__, schedParam.sched_priority);
+     }
+ 
+ #ifdef SET_CPU_AFFINITY
+diff --git a/stack/src/kernel/edrv/edrv-pcap_linux.c b/stack/src/kernel/edrv/edrv-pcap_linux.c
+index 297c271..94e4dc1 100644
+--- a/stack/src/kernel/edrv/edrv-pcap_linux.c
++++ b/stack/src/kernel/edrv/edrv-pcap_linux.c
+@@ -198,7 +198,7 @@ tOplkError edrv_init(tEdrvInitParam* pEdrvInitParam_p)
+         return kErrorEdrvInit;
+     }
+ 
+-    schedParam.__sched_priority = CONFIG_THREAD_PRIORITY_MEDIUM;
++    schedParam.sched_priority = CONFIG_THREAD_PRIORITY_MEDIUM;
+     if (pthread_setschedparam(edrvInstance_l.hThread, SCHED_FIFO, &schedParam) != 0)
+     {
+         DEBUG_LVL_ERROR_TRACE("%s() couldn't set thread scheduling parameters!\n",
+diff --git a/stack/src/kernel/timer/hrestimer-posix.c b/stack/src/kernel/timer/hrestimer-posix.c
+index e236f42..8346e6f 100644
+--- a/stack/src/kernel/timer/hrestimer-posix.c
++++ b/stack/src/kernel/timer/hrestimer-posix.c
+@@ -171,7 +171,7 @@ tOplkError hrestimer_init(void)
+         return kErrorNoResource;
+     }
+ 
+-    schedParam.__sched_priority = CONFIG_THREAD_PRIORITY_HIGH;
++    schedParam.sched_priority = CONFIG_THREAD_PRIORITY_HIGH;
+     if (pthread_setschedparam(hresTimerInstance_l.threadId, SCHED_FIFO, &schedParam) != 0)
+     {
+         DEBUG_LVL_ERROR_TRACE("%s() Couldn't set thread scheduling parameters!\n", __func__);
+diff --git a/stack/src/kernel/timer/hrestimer-posix_clocknanosleep.c b/stack/src/kernel/timer/hrestimer-posix_clocknanosleep.c
+index d878049..2cf8e8f 100644
+--- a/stack/src/kernel/timer/hrestimer-posix_clocknanosleep.c
++++ b/stack/src/kernel/timer/hrestimer-posix_clocknanosleep.c
+@@ -191,7 +191,7 @@ tOplkError hrestimer_init(void)
+             return kErrorNoResource;
+         }
+ 
+-        schedParam.__sched_priority = CONFIG_THREAD_PRIORITY_HIGH;
++        schedParam.sched_priority = CONFIG_THREAD_PRIORITY_HIGH;
+         if (pthread_setschedparam(pTimerInfo->timerThreadId, SCHED_FIFO, &schedParam) != 0)
+         {
+             DEBUG_LVL_ERROR_TRACE("%s() Couldn't set thread scheduling parameters!\n", __func__);
+diff --git a/stack/src/user/event/eventucal-linuxioctl.c b/stack/src/user/event/eventucal-linuxioctl.c
+index d74e629..60698ac 100644
+--- a/stack/src/user/event/eventucal-linuxioctl.c
++++ b/stack/src/user/event/eventucal-linuxioctl.c
+@@ -145,11 +145,11 @@ tOplkError eventucal_init(void)
+     {
+         goto Exit;
+     }
+-    schedParam.__sched_priority = USER_EVENT_THREAD_PRIORITY;
++    schedParam.sched_priority = USER_EVENT_THREAD_PRIORITY;
+     if (pthread_setschedparam(instance_l.threadId, SCHED_FIFO, &schedParam) != 0)
+     {
+         DEBUG_LVL_ERROR_TRACE("%s(): couldn't set thread scheduling parameters! %d\n",
+-                              __func__, schedParam.__sched_priority);
++                              __func__, schedParam.sched_priority);
+     }
+ 
+ #if (defined(__GLIBC__) && __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 12)
+-- 
+2.4.3
+
diff --git a/package/openpowerlink/0005-FIX-add-missing-header-sys-time.h.patch b/package/openpowerlink/0005-FIX-add-missing-header-sys-time.h.patch
new file mode 100644
index 0000000..5436c64
--- /dev/null
+++ b/package/openpowerlink/0005-FIX-add-missing-header-sys-time.h.patch
@@ -0,0 +1,47 @@
+From e225e4bde06f78a840eddffed4bc4955b8494f7e Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Fri, 7 Aug 2015 14:58:22 +0200
+Subject: [PATCH] [FIX] add missing header sys/time.h
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+sys/time.h is missing when a musl based toolchain is used.
+
+Fixes:
+/stack/src/arch/linux/target-linux.c:118:21: error: storage size of ?timeout? isn?t known
+     struct  timeval timeout;
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ apps/common/src/system/system-linux.c | 1 +
+ stack/src/arch/linux/target-linux.c   | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/apps/common/src/system/system-linux.c b/apps/common/src/system/system-linux.c
+index 7c3a643..81b14a2 100644
+--- a/apps/common/src/system/system-linux.c
++++ b/apps/common/src/system/system-linux.c
+@@ -47,6 +47,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include <errno.h>
+ #include <pthread.h>
+ #include <signal.h>
++#include <sys/time.h>
+ 
+ #include "system.h"
+ 
+diff --git a/stack/src/arch/linux/target-linux.c b/stack/src/arch/linux/target-linux.c
+index 4265b9e..595d4e9 100644
+--- a/stack/src/arch/linux/target-linux.c
++++ b/stack/src/arch/linux/target-linux.c
+@@ -43,6 +43,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include <fcntl.h>
+ #include <signal.h>
+ #include <time.h>
++#include <sys/time.h>
+ 
+ #include <common/oplkinc.h>
+ #include <common/ftracedebug.h>
+-- 
+2.4.3
+
diff --git a/package/openpowerlink/Config.in b/package/openpowerlink/Config.in
index d87f8be..713fb83 100644
--- a/package/openpowerlink/Config.in
+++ b/package/openpowerlink/Config.in
@@ -1,14 +1,11 @@
-comment "openpowerlink needs a toolchain w/ C++, threads"
-	depends on BR2_USE_MMU
+comment "openpowerlink needs a toolchain w/ threads"
 	depends on BR2_i386 || BR2_x86_64
-	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
 
 config BR2_PACKAGE_OPENPOWERLINK
 	bool "openpowerlink"
-	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_i386 || BR2_x86_64
-	depends on BR2_USE_MMU # qt
 	help
 	  openPOWERLINK is an Open Source Industrial Ethernet
 	  stack implementing the POWERLINK protocol for Managing Node
@@ -19,100 +16,67 @@ config BR2_PACKAGE_OPENPOWERLINK
 	  B&R (http://www.br-automation.com) and
 	  Kalycito (http://www.kalycito.com).
 
-	  https://sourceforge.net/projects/openpowerlink/
+	  http://openpowerlink.sourceforge.net/web/
 
 if BR2_PACKAGE_OPENPOWERLINK
 
 choice
-	prompt "stack implementation"
-
-config BR2_PACKAGE_OPENPOWERLINK_LIBPCAP
-	bool "userspace stack"
-	select BR2_PACKAGE_LIBPCAP
-	help
-	  The Linux userspace implementation of the openPOWERLINK stack provides
-	  all functions for a software based POWERLINK solution running as Linux
-	  userspace application. The stack uses the libpcap library for accessing
-	  the network interface and is therefore totally independant of the used
-	  network card and driver.
-
-config BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE
-	bool "kernel stack"
-	depends on BR2_LINUX_KERNEL
-	help
-	  The openPOWERLINK stack may be implemented as Linux kernel module.
-	  This solution provides the best performance, but is limited to the
-	  available openPOWERLINK network drivers.
-	  You may select BR2_PACKAGE_PCIUTILS for lscpi,
-	  and BR2_PACKAGE_PROCPS for ps command.
-	  These commands are used in EplLoad and EplUndload scripts.
-
-endchoice
-
-if BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE
-
-choice
-	prompt "select Ethernet Powerlink Driver"
-
-config BR2_PACKAGE_OPENPOWERLINK_82573
-	bool "Intel 82573"
-
-config BR2_PACKAGE_OPENPOWERLINK_8255x
-	bool "Intel 8255x"
-
-config BR2_PACKAGE_OPENPOWERLINK_I210
-	bool "Intel I210"
-
-config BR2_PACKAGE_OPENPOWERLINK_RTL8139
-	bool "Realtek RTL-8139"
-
-endchoice
-
-endif
-
-choice
 	prompt "Select MN/CN mode"
 
 	config BR2_PACKAGE_OPENPOWERLINK_MN
 	bool "MN"
 	help
-	  Enable Managing Node mode
+	  Enable Managing Node (master) mode
 
 	config BR2_PACKAGE_OPENPOWERLINK_CN
 	bool "CN"
 	help
-	  Enable Controlled Node mode
+	  Enable Controlled Node (slave) mode
 
 endchoice
 
-menu "openpowerlink demos"
-
-config BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE
-	bool "console MN demo"
-	depends on BR2_PACKAGE_OPENPOWERLINK_MN
+choice
+	prompt "Select openPOWERLINK library type"
 
-config BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_QT
-	bool "qt MN demo"
-	depends on BR2_PACKAGE_OPENPOWERLINK_MN
-	depends on BR2_INSTALL_LIBSTDCPP
-	select BR2_PACKAGE_QT
-	select BR2_PACKAGE_QT_STL
+config BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB
+	bool "the EPL stack is directly linked into application."
+	select BR2_PACKAGE_LIBPCAP
+	help
+	  Compile a monolithic openPOWERLINK library. The library contains
+	  an Ethernet driver which is using the PCAP library for accessing
+	  the network. No kernel-side driver is needed.
 
-config BR2_PACKAGE_OPENPOWERLINK_DEMO_CN_CONSOLE
-	bool "console CN demo"
-	depends on !BR2_PACKAGE_OPENPOWERLINK_MN
+config BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB
+	bool "build EPL stack as linux userspace pcap daemon."
+	select BR2_PACKAGE_LIBPCAP
+	help
+	  Compile openPOWERLINK application library which contains the
+	  interface to a Linux user space driver, and the Linux user space
+	  driver. It is used for implementing a multi-process solution
+	  where the openPOWERLINK layer is running as a separate
+	  Linux user space daemon (i.e. a PCAP based user space daemon).
+	  No kernel-side stack is needed.
+
+config BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB
+	bool "build EPL stack as linux kernelspace module."
+	depends on BR2_LINUX_KERNEL # openpowerlink-kernel-driver
+	help
+	  Compile openPOWERLINK application library which contains the
+	  interface to a Linux kernel space driver. This will also build
+	  and install a Linux kernel module openPOWERLINK driver.
 
-config BR2_PACKAGE_OPENPOWERLINK_DEMO_LINUX_KERNEL
-	bool "kernel demo"
-	depends on BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE
-	depends on BR2_PACKAGE_OPENPOWERLINK_MN
+comment "openpowerlink kernel stack needs a Linux kernel to be built"
+	depends on !BR2_LINUX_KERNEL
 
-endmenu
+endchoice
 
 config BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL
 	string "debug level for openpowerlink stack"
 	default "0xEC000000L"
+	depends on BR2_ENABLE_DEBUG
 	help
 	  Debug level to be used for openPOWERLINK debugging functions.
+	  The bit field is defined in oplk/debug.h and allows to enable
+	  only debug trace on corresponding openpowerlink stack layers.
 
-endif
+endif # BR2_PACKAGE_OPENPOWERLINK
diff --git a/package/openpowerlink/openpowerlink.hash b/package/openpowerlink/openpowerlink.hash
new file mode 100644
index 0000000..31aaa22
--- /dev/null
+++ b/package/openpowerlink/openpowerlink.hash
@@ -0,0 +1,3 @@
+# From http://sourceforge.net/projects/openpowerlink/files/openPOWERLINK/V2.2.0/
+md5	d3833cd7151f92c5a64adc61a32508a3	openPOWERLINK-V2.2.0.tar.gz
+sha1	84e52376704b5389dae50a83881d98f2e7b33e62	openPOWERLINK-V2.2.0.tar.gz
diff --git a/package/openpowerlink/openpowerlink.mk b/package/openpowerlink/openpowerlink.mk
index d9cdcdd..ced9fd6 100644
--- a/package/openpowerlink/openpowerlink.mk
+++ b/package/openpowerlink/openpowerlink.mk
@@ -4,67 +4,67 @@
 #
 ################################################################################
 
-OPENPOWERLINK_VERSION = V1.08.5
-OPENPOWERLINK_SITE = http://git.code.sf.net/p/openpowerlink/code
-OPENPOWERLINK_SITE_METHOD = git
+OPENPOWERLINK_VERSION = V2.2.0
+OPENPOWERLINK_SITE = http://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/$(OPENPOWERLINK_VERSION)
+OPENPOWERLINK_SOURCE = openPOWERLINK-$(OPENPOWERLINK_VERSION).tar.gz
 OPENPOWERLINK_LICENSE = BSD-2c, GPLv2
-OPENPOWERLINK_LICENSE_FILES = license.txt
-OPENPOWERLINK_INSTALL_STAGING = YES
+OPENPOWERLINK_LICENSE_FILES = license.md
 
-OPENPOWERLINK_CONF_OPTS = -DCFG_DEBUG_LVL=$(call qstrip,$(BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL))
+OPENPOWERLINK_INSTALL_STAGING = YES
 
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_LIBPCAP),y)
-#  use the user space stack (libpcap)
-OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_STACK=OFF
-OPENPOWERLINK_DEPENDENCIES = libpcap
-else
-# use the kernel stack
-OPENPOWERLINK_CONF_OPTS += \
-	-DCFG_KERNEL_STACK=ON \
-	-DCFG_KERNEL_DIR=$(LINUX_DIR) \
-	-DCMAKE_SYSTEM_VERSION=$(LINUX_VERSION)
-OPENPOWERLINK_DEPENDENCIES = linux
+# CFG_DEBUG_LVL is taken into account only in Debug
+ifeq ($(BR2_ENABLE_DEBUG),y)
+OPENPOWERLINK_CONF_OPTS = \
+	-DCFG_DEBUG_LVL="$(call qstrip,$(BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL))"
 endif
 
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_82573),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=82573
-else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_8255x),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8255x
-else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_I210),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=I210
-else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_RTL8139),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8139
-endif
+define OPENPOWERLINK_EXTRACT_CMDS
+	$(INFLATE$(suffix $($(PKG)_SOURCE))) $(DL_DIR)/$($(PKG)_SOURCE) | \
+		$(TAR) -C $($(PKG)_DIR) $(TAR_OPTIONS) - $($(PKG)_TAR_OPTIONS)
+endef
 
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_MN),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_MN=ON
-else
-OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_MN=OFF
-endif
+# Use the openPOWERLINK project which build the stack libraries.
+OPENPOWERLINK_SUBDIR = stack
 
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_CONSOLE=ON
-else
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_CONSOLE=OFF
-endif
+OPENPOWERLINK_MN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_MN),ON,OFF)
+OPENPOWERLINK_CN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_CN),ON,OFF)
 
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_QT),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_QT=ON
-OPENPOWERLINK_DEPENDENCIES += qt
-else
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_QT=OFF
-endif
-
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_CN_CONSOLE),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_CN_CONSOLE=ON
-else
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_CN_CONSOLE=OFF
+# All option are ON by default
+ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y)
+OPENPOWERLINK_DEPENDENCIES += libpcap
+OPENPOWERLINK_CONF_OPTS += \
+	-DCFG_COMPILE_LIB_MN=$(OPENPOWERLINK_MN_ONOFF) \
+	-DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \
+	-DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \
+	-DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \
+	-DCFG_COMPILE_LIB_CN=$(OPENPOWERLINK_CN_ONOFF) \
+	-DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \
+	-DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \
+	-DCFG_COMPILE_LIB_CNDRV_PCAP=OFF
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y)
+OPENPOWERLINK_DEPENDENCIES += libpcap
+OPENPOWERLINK_CONF_OPTS += \
+	-DCFG_COMPILE_LIB_MN=OFF \
+	-DCFG_COMPILE_LIB_MNAPP_USERINTF=$(OPENPOWERLINK_MN_ONOFF) \
+	-DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \
+	-DCFG_COMPILE_LIB_MNDRV_PCAP=$(OPENPOWERLINK_MN_ONOFF) \
+	-DCFG_COMPILE_LIB_CN=OFF \
+	-DCFG_COMPILE_LIB_CNAPP_USERINTF=$(OPENPOWERLINK_CN_ONOFF) \
+	-DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \
+	-DCFG_COMPILE_LIB_CNDRV_PCAP=$(OPENPOWERLINK_CN_ONOFF)
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y)
+OPENPOWERLINK_CONF_OPTS += \
+	-DCFG_COMPILE_LIB_MN=OFF \
+	-DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \
+	-DCFG_COMPILE_LIB_MNAPP_KERNELINTF=$(OPENPOWERLINK_MN_ONOFF) \
+	-DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \
+	-DCFG_COMPILE_LIB_CN=OFF \
+	-DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \
+	-DCFG_COMPILE_LIB_CNAPP_KERNELINTF=$(OPENPOWERLINK_CN_ONOFF) \
+	-DCFG_COMPILE_LIB_CNDRV_PCAP=OFF
 endif
 
-ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_LINUX_KERNEL),y)
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_LINUX_KERNEL=ON
-else
-OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_LINUX_KERNEL=OFF
-endif
+OPENPOWERLINK_CONF_OPTS += \
+	-DCFG_COMPILE_SHARED_LIBRARY=$(if $(BR2_STATIC_LIBS),OFF,ON)
 
 $(eval $(cmake-package))
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCHv3 2/4] package/openpowerlink-kernel-drivers: new package
  2015-08-07 13:28 [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 1/4] package/openpowerlink: bump to v2.2.0 Romain Naour
@ 2015-08-07 13:29 ` Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 3/4] package/openpowerlink-pcap-daemon: " Romain Naour
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Romain Naour @ 2015-08-07 13:29 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
v3: Rename to openpowerlink-kernel-drivers
    Fix typos in Config.in
    Provide a hash file via a symlink to
    openpowerlink.hash
    Fix driver build issue due to mussing ARCH and
    CROSS_COMPILE options
    fix typo for i210 dirver (s/I210/i210)
    Don't use $(OPENPOWERLINK_*) since they will not
    be set in openpowerlink-kernel-drivers.mk
    move openpowerlink-kernel-drivers to package
    directory.
---
 package/Config.in                                  |  1 +
 package/openpowerlink-kernel-drivers/Config.in     | 33 +++++++++++++
 .../openpowerlink-kernel-drivers.hash              |  1 +
 .../openpowerlink-kernel-drivers.mk                | 54 ++++++++++++++++++++++
 package/openpowerlink/Config.in                    |  1 +
 5 files changed, 90 insertions(+)
 create mode 100644 package/openpowerlink-kernel-drivers/Config.in
 create mode 120000 package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.hash
 create mode 100644 package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.mk

diff --git a/package/Config.in b/package/Config.in
index 47d14d7..47f7da1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -394,6 +394,7 @@ endif
 	source "package/openipmi/Config.in"
 	source "package/openocd/Config.in"
 	source "package/openpowerlink/Config.in"
+	source "package/openpowerlink-kernel-drivers/Config.in"
 	source "package/owl-linux/Config.in"
 	source "package/parted/Config.in"
 	source "package/pciutils/Config.in"
diff --git a/package/openpowerlink-kernel-drivers/Config.in b/package/openpowerlink-kernel-drivers/Config.in
new file mode 100644
index 0000000..bc1e408
--- /dev/null
+++ b/package/openpowerlink-kernel-drivers/Config.in
@@ -0,0 +1,33 @@
+
+config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS
+	bool "openpowerlink kernel drivers"
+	depends on BR2_LINUX_KERNEL
+	depends on BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB
+	help
+	  The openPOWERLINK stack is implemented as Linux kernel module.
+	  This solution provides the best performance, but is limited to
+	  the available openPOWERLINK network drivers.
+
+if BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS
+
+choice
+	prompt "select Ethernet Powerlink Driver"
+
+config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_82573
+	bool "Intel 82573"
+
+config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_8255x
+	bool "Intel 8255x"
+
+config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_I210
+	bool "Intel I210"
+
+config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_RTL8111
+	bool "Realtek RTL-8111/8168"
+
+config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_RTL8139
+	bool "Realtek RTL-8139"
+
+endchoice
+
+endif # BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS
diff --git a/package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.hash b/package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.hash
new file mode 120000
index 0000000..cbbc194
--- /dev/null
+++ b/package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.hash
@@ -0,0 +1 @@
+../openpowerlink/openpowerlink.hash
\ No newline at end of file
diff --git a/package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.mk b/package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.mk
new file mode 100644
index 0000000..3f1f420
--- /dev/null
+++ b/package/openpowerlink-kernel-drivers/openpowerlink-kernel-drivers.mk
@@ -0,0 +1,54 @@
+################################################################################
+#
+# openpowerlink-kernel-drivers
+#
+################################################################################
+
+OPENPOWERLINK_KERNEL_DRIVERS_VERSION = V2.2.0
+OPENPOWERLINK_KERNEL_DRIVERS_SITE = http://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/$(OPENPOWERLINK_KERNEL_DRIVERS_VERSION)
+OPENPOWERLINK_KERNEL_DRIVERS_SOURCE = openPOWERLINK-$(OPENPOWERLINK_KERNEL_DRIVERS_VERSION).tar.gz
+OPENPOWERLINK_KERNEL_DRIVERS_LICENSE = BSD-2c, GPLv2
+OPENPOWERLINK_KERNEL_DRIVERS_LICENSE_FILES = license.md
+
+OPENPOWERLINK_KERNEL_DRIVERS_DEPENDENCIES = linux openpowerlink
+
+define OPENPOWERLINK_KERNEL_DRIVERS_EXTRACT_CMDS
+	$(INFLATE$(suffix $($(PKG)_SOURCE))) $(DL_DIR)/$($(PKG)_SOURCE) | \
+		$(TAR) -C $($(PKG)_DIR) $(TAR_OPTIONS) - $($(PKG)_TAR_OPTIONS)
+endef
+
+define OPENPOWERLINK_KERNEL_DRIVERS_APPLY_PATCHES
+	$(APPLY_PATCHES) $(@D) package/openpowerlink \*.patch
+endef
+
+OPENPOWERLINK_KERNEL_DRIVERS_POST_PATCH_HOOKS += \
+	OPENPOWERLINK_KERNEL_DRIVERS_APPLY_PATCHES
+
+OPENPOWERLINK_KERNEL_DRIVERS_SUBDIR = drivers/linux/drv_kernelmod_edrv
+
+# CFG_DEBUG_LVL is taken into account only in Debug
+ifeq ($(BR2_ENABLE_DEBUG),y)
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS = \
+	-DCFG_DEBUG_LVL="$(call qstrip,$(BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL))"
+endif
+
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS += \
+	-DCFG_KERNEL_DIR="$(LINUX_DIR)" \
+	-DCMAKE_SYSTEM_VERSION="$(LINUX_VERSION)" \
+	-DCFG_OPLK_MN="$(OPENPOWERLINK_MN_ONOFF)" \
+	-DMAKE_KERNEL_ARCH="$(KERNEL_ARCH)" \
+	-DMAKE_KERNEL_CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)"
+
+ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_82573),y)
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS += -DCFG_POWERLINK_EDRV=82573
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_8255x),y)
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS += -DCFG_POWERLINK_EDRV=8255x
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_I210),y)
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS += -DCFG_POWERLINK_EDRV=i210
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_RTL8139),y)
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS += -DCFG_POWERLINK_EDRV=8139
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS_RTL8111),y)
+OPENPOWERLINK_KERNEL_DRIVERS_CONF_OPTS += -DCFG_POWERLINK_EDRV=8111
+endif
+
+$(eval $(cmake-package))
diff --git a/package/openpowerlink/Config.in b/package/openpowerlink/Config.in
index 713fb83..93e66d2 100644
--- a/package/openpowerlink/Config.in
+++ b/package/openpowerlink/Config.in
@@ -60,6 +60,7 @@ config BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB
 config BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB
 	bool "build EPL stack as linux kernelspace module."
 	depends on BR2_LINUX_KERNEL # openpowerlink-kernel-driver
+	select BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVERS
 	help
 	  Compile openPOWERLINK application library which contains the
 	  interface to a Linux kernel space driver. This will also build
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCHv3 3/4] package/openpowerlink-pcap-daemon: new package
  2015-08-07 13:28 [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 1/4] package/openpowerlink: bump to v2.2.0 Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 2/4] package/openpowerlink-kernel-drivers: new package Romain Naour
@ 2015-08-07 13:29 ` Romain Naour
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 4/4] package/openpowerlink-apps-demo-mn-console: " Romain Naour
  2015-08-10 13:14 ` [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
  4 siblings, 0 replies; 6+ messages in thread
From: Romain Naour @ 2015-08-07 13:29 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
v3: rename to openpowerlink-pcap-daemon
    Provide a hash file via a symlink to
    openpowerlink.hash
    Don't use $(OPENPOWERLINK_*) since they will not
    be set in openpowerlink-pcap-daemon
    move openpowerlink-pcap-daemon to package
    directory.
---
 package/Config.in                                  |  1 +
 package/openpowerlink-pcap-daemon/Config.in        | 12 +++++++
 .../openpowerlink-pcap-daemon.hash                 |  1 +
 .../openpowerlink-pcap-daemon.mk                   | 38 ++++++++++++++++++++++
 package/openpowerlink/Config.in                    |  1 +
 5 files changed, 53 insertions(+)
 create mode 100644 package/openpowerlink-pcap-daemon/Config.in
 create mode 120000 package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.hash
 create mode 100644 package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.mk

diff --git a/package/Config.in b/package/Config.in
index 47f7da1..830b9a2 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -395,6 +395,7 @@ endif
 	source "package/openocd/Config.in"
 	source "package/openpowerlink/Config.in"
 	source "package/openpowerlink-kernel-drivers/Config.in"
+	source "package/openpowerlink-pcap-daemon/Config.in"
 	source "package/owl-linux/Config.in"
 	source "package/parted/Config.in"
 	source "package/pciutils/Config.in"
diff --git a/package/openpowerlink-pcap-daemon/Config.in b/package/openpowerlink-pcap-daemon/Config.in
new file mode 100644
index 0000000..4236a57
--- /dev/null
+++ b/package/openpowerlink-pcap-daemon/Config.in
@@ -0,0 +1,12 @@
+
+config BR2_PACKAGE_OPENPOWERLINK_PCAP_DAEMON
+	bool "openpowerlink userspace (PCAP) stack"
+	depends on BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB
+	select BR2_PACKAGE_LIBPCAP
+	help
+	  The Linux userspace implementation of the openPOWERLINK stack
+	  provides all functions for a software based POWERLINK solution
+	  running as Linux userspace application. The stack uses the
+	  libpcap library for accessing the network interface and is
+	  therefore totally independant of the used network card and
+	  driver.
diff --git a/package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.hash b/package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.hash
new file mode 120000
index 0000000..cbbc194
--- /dev/null
+++ b/package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.hash
@@ -0,0 +1 @@
+../openpowerlink/openpowerlink.hash
\ No newline at end of file
diff --git a/package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.mk b/package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.mk
new file mode 100644
index 0000000..8575128
--- /dev/null
+++ b/package/openpowerlink-pcap-daemon/openpowerlink-pcap-daemon.mk
@@ -0,0 +1,38 @@
+################################################################################
+#
+# openpowerlink-pcap-daemon
+#
+################################################################################
+
+OPENPOWERLINK_PCAP_DAEMON_VERSION = V2.2.0
+OPENPOWERLINK_PCAP_DAEMON_SITE = http://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/$(OPENPOWERLINK_PCAP_DAEMON_VERSION)
+OPENPOWERLINK_PCAP_DAEMON_SOURCE = openPOWERLINK-$(OPENPOWERLINK_PCAP_DAEMON_VERSION).tar.gz
+OPENPOWERLINK_PCAP_DAEMON_LICENSE = BSD-2c, GPLv2
+OPENPOWERLINK_PCAP_DAEMON_LICENSE_FILES = license.md
+
+OPENPOWERLINK_PCAP_DAEMON_DEPENDENCIES = libpcap openpowerlink
+
+define OPENPOWERLINK_PCAP_DAEMON_EXTRACT_CMDS
+	$(INFLATE$(suffix $($(PKG)_SOURCE))) $(DL_DIR)/$($(PKG)_SOURCE) | \
+		$(TAR) -C $($(PKG)_DIR) $(TAR_OPTIONS) - $($(PKG)_TAR_OPTIONS)
+endef
+
+define OPENPOWERLINK_PCAP_DAEMON_APPLY_PATCHES
+	$(APPLY_PATCHES) $(@D) package/openpowerlink \*.patch
+endef
+
+OPENPOWERLINK_PCAP_DAEMON_POST_PATCH_HOOKS += \
+	OPENPOWERLINK_PCAP_DAEMON_APPLY_PATCHES
+
+OPENPOWERLINK_PCAP_DAEMON_SUBDIR = drivers/linux/drv_daemon_pcap
+
+# CFG_DEBUG_LVL is taken into account only in Debug
+ifeq ($(BR2_ENABLE_DEBUG),y)
+OPENPOWERLINK_PCAP_DAEMON_CONF_OPTS = \
+	-DCFG_DEBUG_LVL="$(call qstrip,$(BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL))"
+endif
+
+OPENPOWERLINK_PCAP_DAEMON_CONF_OPTS = \
+	-DCFG_OPLK_MN=$(OPENPOWERLINK_MN_ONOFF)
+
+$(eval $(cmake-package))
diff --git a/package/openpowerlink/Config.in b/package/openpowerlink/Config.in
index 93e66d2..7807fc0 100644
--- a/package/openpowerlink/Config.in
+++ b/package/openpowerlink/Config.in
@@ -49,6 +49,7 @@ config BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB
 config BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB
 	bool "build EPL stack as linux userspace pcap daemon."
 	select BR2_PACKAGE_LIBPCAP
+	select BR2_PACKAGE_OPENPOWERLINK_PCAP_DAEMON
 	help
 	  Compile openPOWERLINK application library which contains the
 	  interface to a Linux user space driver, and the Linux user space
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCHv3 4/4] package/openpowerlink-apps-demo-mn-console: new package
  2015-08-07 13:28 [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
                   ` (2 preceding siblings ...)
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 3/4] package/openpowerlink-pcap-daemon: " Romain Naour
@ 2015-08-07 13:29 ` Romain Naour
  2015-08-10 13:14 ` [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
  4 siblings, 0 replies; 6+ messages in thread
From: Romain Naour @ 2015-08-07 13:29 UTC (permalink / raw)
  To: buildroot

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
v3: rename to openpowerlink-apps-demo-mn-console
    Provide a hash file via a symlink to
    openpowerlink.hash
    Don't use $(OPENPOWERLINK_*) since they will not
    be set in openpowerlink-apps-demo-mn-console.mk
    move openpowerlink-apps-demo-mn-console to package
    directory.
---
 package/Config.in                                  |  1 +
 .../openpowerlink-apps-demo-mn-console/Config.in   |  6 +++
 .../openpowerlink-apps-demo-mn-console.hash        |  1 +
 .../openpowerlink-apps-demo-mn-console.mk          | 50 ++++++++++++++++++++++
 4 files changed, 58 insertions(+)
 create mode 100644 package/openpowerlink-apps-demo-mn-console/Config.in
 create mode 120000 package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.hash
 create mode 100644 package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.mk

diff --git a/package/Config.in b/package/Config.in
index 830b9a2..0681e05 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -396,6 +396,7 @@ endif
 	source "package/openpowerlink/Config.in"
 	source "package/openpowerlink-kernel-drivers/Config.in"
 	source "package/openpowerlink-pcap-daemon/Config.in"
+	source "package/openpowerlink-apps-demo-mn-console/Config.in"
 	source "package/owl-linux/Config.in"
 	source "package/parted/Config.in"
 	source "package/pciutils/Config.in"
diff --git a/package/openpowerlink-apps-demo-mn-console/Config.in b/package/openpowerlink-apps-demo-mn-console/Config.in
new file mode 100644
index 0000000..e7b31eb
--- /dev/null
+++ b/package/openpowerlink-apps-demo-mn-console/Config.in
@@ -0,0 +1,6 @@
+
+config BR2_PACKAGE_OPENPOWERLINK_APPS_DEMO_MN_CONSOLE
+	bool "openpowerlink demo_mn_console"
+	depends on BR2_PACKAGE_OPENPOWERLINK
+	help
+	  Managing Node console demo application
diff --git a/package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.hash b/package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.hash
new file mode 120000
index 0000000..cbbc194
--- /dev/null
+++ b/package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.hash
@@ -0,0 +1 @@
+../openpowerlink/openpowerlink.hash
\ No newline at end of file
diff --git a/package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.mk b/package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.mk
new file mode 100644
index 0000000..b7952e3
--- /dev/null
+++ b/package/openpowerlink-apps-demo-mn-console/openpowerlink-apps-demo-mn-console.mk
@@ -0,0 +1,50 @@
+################################################################################
+#
+# openpowerlink-apps-demo-mn-console
+#
+################################################################################
+
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_VERSION = V2.2.0
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_SITE = http://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/$(OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_VERSION)
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_SOURCE = openPOWERLINK-$(OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_VERSION).tar.gz
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_LICENSE = BSD-2c, GPLv2
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_LICENSE_FILES = license.md
+
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_DEPENDENCIES = openpowerlink
+
+define OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_EXTRACT_CMDS
+	$(INFLATE$(suffix $($(PKG)_SOURCE))) $(DL_DIR)/$($(PKG)_SOURCE) | \
+		$(TAR) -C $($(PKG)_DIR) $(TAR_OPTIONS) - $($(PKG)_TAR_OPTIONS)
+endef
+
+define OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_APPLY_PATCHES
+	$(APPLY_PATCHES) $(@D) package/openpowerlink \*.patch
+endef
+
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_POST_PATCH_HOOKS += \
+	OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_APPLY_PATCHES
+
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_SUBDIR = apps/demo_mn_console/
+
+# See apps/common/cmake/configure-linux.cmake for available options list.
+
+# CFG_DEBUG_LVL is taken into account only in Debug
+ifeq ($(BR2_ENABLE_DEBUG),y)
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_CONF_OPTS = \
+	-DCFG_DEBUG_LVL="$(call qstrip,$(BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL))"
+endif
+
+ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y)
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_CONF_OPTS += \
+	-DCFG_BUILD_KERNEL_STACK="Link to Application"
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y)
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_CONF_OPTS += \
+	-DCFG_BUILD_KERNEL_STACK="Linux Userspace Daemon" \
+	-DCFG_DEMO_MN_CONSOLE_USE_SYNCTHREAD=ON
+else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y)
+OPENPOWERLINK_APPS_DEMO_MN_CONSOLE_CONF_OPTS += \
+	-DCFG_BUILD_KERNEL_STACK="Linux Kernel Module" \
+	-DCFG_DEMO_MN_CONSOLE_USE_SYNCTHREAD=ON
+endif
+
+$(eval $(cmake-package))
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2
  2015-08-07 13:28 [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
                   ` (3 preceding siblings ...)
  2015-08-07 13:29 ` [Buildroot] [PATCHv3 4/4] package/openpowerlink-apps-demo-mn-console: " Romain Naour
@ 2015-08-10 13:14 ` Romain Naour
  4 siblings, 0 replies; 6+ messages in thread
From: Romain Naour @ 2015-08-10 13:14 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

Le 07/08/2015 15:28, Romain Naour a ?crit :
> From doc/openpowerlink.md:
> "The openPOWERLINK release V2.X is an evolution of the openPOWERLINK V1 stack.
> Running the kernel and user layers of openPOWERLINK on different processors in
> a multi-processor/multi-platform architecture, required fundamental changes in
> the Communication Abstraction Layer. Additionally, the existing code base was
> greatly improved so that it is easier to understand and maintain. Due to these
> reasons a new major release was started."
> 
> The openpowerlink2 package archive contains several cmake projects,
> and each of them must be packaged separately in Buildroot.
> 
> "With version 2.0, the source code has been cleanly split into an
> application-oriented user library and a time-critical stack driver."
> 
> This complicates the packaging but it helps to refine the dependencies
> compared to openpowerlink v1 build system.
> (openpowerlink v1 requires C++ only for the qt demo)
> 

You asked on IRC if it's possible to have only one openpowerlink package.
I would say yes, by adding a top-level CMakeLists.txt like this one [1] but
the build dependencies between each projects are not handled.
All is build at the same time.
This is a problem for demo applications which are looking for openpowerlink
libraries using FIND_OPLK_LIBRARY, but before it had time to be compiled.

I don't know how to add a dependency between the "stack" project and the "app"
project.

Otherwise, we need to package each sub projects in order to handle the
dependency outside of the CMake world...

Samuel, have you an idea ?

Best regards,
Romain

[1] https://sourceforge.net/u/kubu/code/ci/f80f43d02aabb0f2acc09d4ce420ecc3dcfad81c/

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-08-10 13:14 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-07 13:28 [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour
2015-08-07 13:29 ` [Buildroot] [PATCHv3 1/4] package/openpowerlink: bump to v2.2.0 Romain Naour
2015-08-07 13:29 ` [Buildroot] [PATCHv3 2/4] package/openpowerlink-kernel-drivers: new package Romain Naour
2015-08-07 13:29 ` [Buildroot] [PATCHv3 3/4] package/openpowerlink-pcap-daemon: " Romain Naour
2015-08-07 13:29 ` [Buildroot] [PATCHv3 4/4] package/openpowerlink-apps-demo-mn-console: " Romain Naour
2015-08-10 13:14 ` [Buildroot] [PATCHv3 0/4] openpowerlink bump to v2.2 Romain Naour

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.