Skip to contentSkip to conversation

libmraa: new package

PATCH New Pieterjan Camerlynck 4 participants 10 messages Jan 4, 2016 – Jan 12, 2016

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 libmraa: new package

libmraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

---
 package/Config.in          |  1 +
 package/libmraa/Config.in  | 17 +++++++++++++++++
 package/libmraa/libmraa.mk | 22 ++++++++++++++++++++++
 3 files changed, 40 insertions(+)
 create mode 100644 package/libmraa/Config.in
 create mode 100644 package/libmraa/libmraa.mk
package/Config.in +1 -0
index 442021f..52f6b5b 100644
@@ -930,6 +930,7 @@ menu "Hardware handling"
 	source "package/libiqrf/Config.in"
 	source "package/libllcp/Config.in"
 	source "package/libmbim/Config.in"
+	source "package/libmraa/Config.in"
 	source "package/libnfc/Config.in"
 	source "package/libpciaccess/Config.in"
 	source "package/libphidget/Config.in"
package/libmraa/Config.in new file +17 -0
new file mode 100644
index 0000000..cfbe37c
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_LIBMRAA
+	bool "libmraa"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_STATIC_LIBS
+	depends on BR2_ARM_CPU_ARMV7A || BR2_i386 || BR2_x86_64
+	help
+	  Libmraa is a C/C++ library with bindings to javascript & python
+	  to interface with the IO on Galileo, Edison & other platforms,
+	  with a structured and sane API where port names/numbering matches
+	  the board that you are on.
+
+	  http://iotdk.intel.com/docs/master/mraa
+
+comment "libmraa needs a toolchain w/ C++, threads, dynamic library"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
+		|| BR2_STATIC_LIBS
package/libmraa/libmraa.mk new file +22 -0
new file mode 100644
index 0000000..099e883
@@ -0,0 +1,22 @@
+################################################################################
+#
+# libmraa
+#
+################################################################################
+
+LIBMRAA_VERSION = v0.9.0
+LIBMRAA_SITE = $(call github,intel-iot-devkit,mraa,$(LIBMRAA_VERSION))
+LIBMRAA_LICENSE = MIT
+LIBMRAA_LICENSE_FILES = COPYING
+LIBMRAA_INSTALL_STAGING = YES
+
+LIBMRAA_CONF_OPTS += \
+	-DBUILDSWIG=OFF \
+	-DUSBPLAT=OFF \
+	-DFTDI4222=OFF \
+	-DIPK=OFF \
+	-DRPM=OFF \
+	-DENABLEEXAMPLES=OFF \
+	-DTESTS=OFF
+
+$(eval $(cmake-package))
Signature · 1 line
1.9.1
#1 lore raw

PATCH 1/1 libmraa: new package

Hi Pieterjan,

Quoted 30 lines · Pieterjan Camerlynck

libmraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

---
 package/Config.in          |  1 +
 package/libmraa/Config.in  | 17 +++++++++++++++++
 package/libmraa/libmraa.mk | 22 ++++++++++++++++++++++
 3 files changed, 40 insertions(+)
 create mode 100644 package/libmraa/Config.in
 create mode 100644 package/libmraa/libmraa.mk
package/Config.in +1 -0
index 442021f..52f6b5b 100644
@@ -930,6 +930,7 @@ menu "Hardware handling"
 	source "package/libiqrf/Config.in"
 	source "package/libllcp/Config.in"
 	source "package/libmbim/Config.in"
+	source "package/libmraa/Config.in"
 	source "package/libnfc/Config.in"
 	source "package/libpciaccess/Config.in"
 	source "package/libphidget/Config.in"
package/libmraa/Config.in new file +0 -0
new file mode 100644
index 0000000..cfbe37c

package/libmraa/Config.in line 3

Quoted 3 lines
package/libmraa/Config.in new file +3 -0
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_LIBMRAA
+	bool "libmraa"
+	depends on BR2_INSTALL_LIBSTDCPP

Actually it doesn't contain any C++ code as far as I can see. So you should
patch CMakeLists.txt to set

project (mraa C)

(and send that patch upstream).

package/libmraa/Config.in line 5

Quoted 2 lines
package/libmraa/Config.in new file +2 -0
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_STATIC_LIBS

I don't see anything that would require dynamic libraries. Can you add a
comment why this is needed?

package/libmraa/Config.in line 6

Quoted 1 line
package/libmraa/Config.in new file +1 -0
+	depends on BR2_ARM_CPU_ARMV7A || BR2_i386 || BR2_x86_64

It actually builds on any platform, except that the CMakeLists.txt explicitly
checks for arm or x86. But there is nothing armv7-specific, and supposedly the library would still be useful on generic boards. So I'd just put BR2_arm.

package/libmraa/Config.in line 8

Quoted 2 lines
package/libmraa/Config.in new file +2 -0
+	help
+	  Libmraa is a C/C++ library with bindings to javascript & python

Well, the js and python bindings aren't built... But that could be added in
follow-up patches so OK.

Quoted 15 lines
package/libmraa/Config.in new file +9 -0
+	  to interface with the IO on Galileo, Edison & other platforms,
+	  with a structured and sane API where port names/numbering matches
+	  the board that you are on.
+
+	  http://iotdk.intel.com/docs/master/mraa
+
+comment "libmraa needs a toolchain w/ C++, threads, dynamic library"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
+		|| BR2_STATIC_LIBS
package/libmraa/libmraa.mk new file +0 -0
new file mode 100644
index 0000000..099e883

package/libmraa/libmraa.mk line 8

Quoted 8 lines
package/libmraa/libmraa.mk new file +8 -0
@@ -0,0 +1,22 @@
+################################################################################
+#
+# libmraa
+#
+################################################################################
+
+LIBMRAA_VERSION = v0.9.0
+LIBMRAA_SITE = $(call github,intel-iot-devkit,mraa,$(LIBMRAA_VERSION))

Upstream calls it mraa, not libmraa, so we prefer to stick to the same name.

Otherwise looks good.

Regards,
Arnout

Quoted 15 lines
package/libmraa/libmraa.mk new file +14 -0
+LIBMRAA_LICENSE = MIT
+LIBMRAA_LICENSE_FILES = COPYING
+LIBMRAA_INSTALL_STAGING = YES
+
+LIBMRAA_CONF_OPTS += \
+	-DBUILDSWIG=OFF \
+	-DUSBPLAT=OFF \
+	-DFTDI4222=OFF \
+	-DIPK=OFF \
+	-DRPM=OFF \
+	-DENABLEEXAMPLES=OFF \
+	-DTESTS=OFF
+
+$(eval $(cmake-package))
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
#2 lore raw

PATCH 1/1 libmraa: new package

2016-01-05 1:48 GMT+01:00 Arnout Vandecappelle <[email protected]>:

Quoted 40 lines

Hi Pieterjan,

Quoted 30 lines · Pieterjan Camerlynck

libmraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

---
 package/Config.in          |  1 +
 package/libmraa/Config.in  | 17 +++++++++++++++++
 package/libmraa/libmraa.mk | 22 ++++++++++++++++++++++
 3 files changed, 40 insertions(+)
 create mode 100644 package/libmraa/Config.in
 create mode 100644 package/libmraa/libmraa.mk
package/Config.in +1 -0
index 442021f..52f6b5b 100644
@@ -930,6 +930,7 @@ menu "Hardware handling"
      source "package/libiqrf/Config.in"
      source "package/libllcp/Config.in"
      source "package/libmbim/Config.in"
+     source "package/libmraa/Config.in"
      source "package/libnfc/Config.in"
      source "package/libpciaccess/Config.in"
      source "package/libphidget/Config.in"
package/libmraa/Config.in new file +0 -0
new file mode 100644
index 0000000..cfbe37c

package/libmraa/Config.in line 3

Quoted 3 lines
package/libmraa/Config.in new file +3 -0
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_LIBMRAA
+     bool "libmraa"
+     depends on BR2_INSTALL_LIBSTDCPP

Actually it doesn't contain any C++ code as far as I can see. So you should
patch CMakeLists.txt to set

Quoted 3 lines

project (mraa C)

(and send that patch upstream).

You are right, the C++ api only exists of header files.

Quoted 5 lines

package/libmraa/Config.in line 5

Quoted 2 lines
package/libmraa/Config.in new file +2 -0
+     depends on BR2_TOOLCHAIN_HAS_THREADS
+     depends on !BR2_STATIC_LIBS

I don't see anything that would require dynamic libraries. Can you add a
comment why this is needed?

I thought it was needed because of the following line in src/CmakeLists.txt:
add_library (mraa SHARED ${mraa_LIB_SRCS})

Quoted 5 lines

package/libmraa/Config.in line 6

Quoted 1 line
package/libmraa/Config.in new file +1 -0
+     depends on BR2_ARM_CPU_ARMV7A || BR2_i386 || BR2_x86_64

It actually builds on any platform, except that the CMakeLists.txt explicitly
checks for arm or x86. But there is nothing armv7-specific, and supposedly the library would still be useful on generic boards. So I'd just put BR2_arm.

Ok

Quoted 5 lines

package/libmraa/Config.in line 8

Quoted 2 lines
package/libmraa/Config.in new file +2 -0
+     help
+       Libmraa is a C/C++ library with bindings to javascript & python

Well, the js and python bindings aren't built... But that could be added in
follow-up patches so OK.

Yes, the bindings are missing at the moment. I still need to figure that part out.

Quoted 17 lines
Quoted 17 lines
package/libmraa/Config.in new file +9 -0
+       to interface with the IO on Galileo, Edison & other platforms,
+       with a structured and sane API where port names/numbering matches
+       the board that you are on.
+
+       http://iotdk.intel.com/docs/master/mraa
+
+comment "libmraa needs a toolchain w/ C++, threads, dynamic library"
+     depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
+             || BR2_STATIC_LIBS
package/libmraa/libmraa.mk new file +2 -0
new file mode 100644
index 0000000..099e883
@@ -0,0 +1,22 @@
+################################################################################
+#
Quoted 8 lines

package/libmraa/libmraa.mk line 8

Quoted 6 lines
package/libmraa/libmraa.mk new file +6 -0
+# libmraa
+#
+################################################################################
+
+LIBMRAA_VERSION = v0.9.0
+LIBMRAA_SITE = $(call github,intel-iot-devkit,mraa,$(LIBMRAA_VERSION))

Upstream calls it mraa, not libmraa, so we prefer to stick to the same name.

Ok. It's confusing because it says libmraa in the readme :-)

Quoted 33 lines

Otherwise looks good.

Regards,
Arnout

Quoted 5 lines
package/libmraa/libmraa.mk new file +4 -0
+LIBMRAA_LICENSE = MIT
+LIBMRAA_LICENSE_FILES = COPYING
+LIBMRAA_INSTALL_STAGING = YES
+

package/libmraa/libmraa.mk line 22

Quoted 10 lines
package/libmraa/libmraa.mk new file +10 -0
+LIBMRAA_CONF_OPTS += \
+     -DBUILDSWIG=OFF \
+     -DUSBPLAT=OFF \
+     -DFTDI4222=OFF \
+     -DIPK=OFF \
+     -DRPM=OFF \
+     -DENABLEEXAMPLES=OFF \
+     -DTESTS=OFF
+
+$(eval $(cmake-package))

--

Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

#3 lore raw

PATCH v2 1/1 mraa: new package

In reply to Pieterjan Camerlynck

mraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others
---
Changes v1->v2:
- rename libmraa to mraa
- remove C++ compiler dependency
- depend on BR2_arm instead of BR2_ARM_CPU_ARMV7A

---
 package/Config.in                                  |  1 +
 .../mraa/0001-do-not-require-cpp-compiler.patch    | 28 ++++++++++++++++++++++
 package/mraa/Config.in                             | 15 ++++++++++++
 package/mraa/mraa.mk                               | 22 +++++++++++++++++
 4 files changed, 66 insertions(+)
 create mode 100644 package/mraa/0001-do-not-require-cpp-compiler.patch
 create mode 100644 package/mraa/Config.in
 create mode 100644 package/mraa/mraa.mk
package/Config.in +1 -0
index 442021f..06ed4a8 100644
@@ -946,6 +946,7 @@ menu "Hardware handling"
 	source "package/libusb-compat/Config.in"
 	source "package/libv4l/Config.in"
 	source "package/libxkbcommon/Config.in"
+	source "package/mraa/Config.in"
 	source "package/mtdev/Config.in"
 	source "package/ne10/Config.in"
 	source "package/neardal/Config.in"
package/mraa/0001-do-not-require-cpp-compiler.patch new file +28 -0
new file mode 100644
index 0000000..fe58a26
@@ -0,0 +1,28 @@
+From f490cf66dbbbdb80de20d8bb5c8cf5d663feb3c5 Mon Sep 17 00:00:00 2001
+From: Pieterjan Camerlynck <[email protected]>
+Date: Tue, 5 Jan 2016 19:36:55 +0100
+Subject: [PATCH 1/1] do not require a C++ compiler
+
+By default, CMake assumes both a C and C++ compiler are required.
+This is not needed for mraa because it only provides C++ header
+files.
+
+Signed-off-by: Pieterjan Camerlynck <[email protected]>
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9860556..34d8e16 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ cmake_minimum_required (VERSION 2.8)
+-project (mraa)
++project (mraa C)
+ 
+ FIND_PACKAGE (Threads REQUIRED)
+ 
+-- 
+1.9.1
+
package/mraa/Config.in new file +15 -0
new file mode 100644
index 0000000..9e8918a
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_MRAA
+	bool "mraa"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_STATIC_LIBS
+	depends on BR2_arm || BR2_i386 || BR2_x86_64
+	help
+	  mraa is a C/C++ library with bindings to javascript & python
+	  to interface with the IO on Galileo, Edison & other platforms,
+	  with a structured and sane API where port names/numbering matches
+	  the board that you are on.
+
+	  http://iotdk.intel.com/docs/master/mraa
+
+comment "mraa needs a toolchain w/ threads, dynamic library"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
package/mraa/mraa.mk new file +22 -0
new file mode 100644
index 0000000..9f3b953
@@ -0,0 +1,22 @@
+################################################################################
+#
+# mraa
+#
+################################################################################
+
+MRAA_VERSION = v0.9.0
+MRAA_SITE = $(call github,intel-iot-devkit,mraa,$(MRAA_VERSION))
+MRAA_LICENSE = MIT
+MRAA_LICENSE_FILES = COPYING
+MRAA_INSTALL_STAGING = YES
+
+MRAA_CONF_OPTS += \
+	-DBUILDSWIG=OFF \
+	-DUSBPLAT=OFF \
+	-DFTDI4222=OFF \
+	-DIPK=OFF \
+	-DRPM=OFF \
+	-DENABLEEXAMPLES=OFF \
+	-DTESTS=OFF
+
+$(eval $(cmake-package))
Signature · 1 line
1.9.1
#4 lore raw

PATCH v2 1/1 mraa: new package

Hi Pieterjan,

Quoted 37 lines · Pieterjan Camerlynck

mraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others
---
Changes v1->v2:
- rename libmraa to mraa
- remove C++ compiler dependency
- depend on BR2_arm instead of BR2_ARM_CPU_ARMV7A

---
 package/Config.in                                  |  1 +
 .../mraa/0001-do-not-require-cpp-compiler.patch    | 28 ++++++++++++++++++++++
 package/mraa/Config.in                             | 15 ++++++++++++
 package/mraa/mraa.mk                               | 22 +++++++++++++++++
 4 files changed, 66 insertions(+)
 create mode 100644 package/mraa/0001-do-not-require-cpp-compiler.patch
 create mode 100644 package/mraa/Config.in
 create mode 100644 package/mraa/mraa.mk
package/Config.in +1 -0
index 442021f..06ed4a8 100644
@@ -946,6 +946,7 @@ menu "Hardware handling"
        source "package/libusb-compat/Config.in"
        source "package/libv4l/Config.in"
        source "package/libxkbcommon/Config.in"
+       source "package/mraa/Config.in"
        source "package/mtdev/Config.in"
        source "package/ne10/Config.in"
        source "package/neardal/Config.in"
package/mraa/0001-do-not-require-cpp-compiler.patch new file +0 -0
new file mode 100644
index 0000000..fe58a26

package/mraa/0001-do-not-require-cpp-compiler.patch line 10

Quoted 10 lines
package/mraa/0001-do-not-require-cpp-compiler.patch new file +10 -0
@@ -0,0 +1,28 @@
+From f490cf66dbbbdb80de20d8bb5c8cf5d663feb3c5 Mon Sep 17 00:00:00 2001
+From: Pieterjan Camerlynck <[email protected]>
+Date: Tue, 5 Jan 2016 19:36:55 +0100
+Subject: [PATCH 1/1] do not require a C++ compiler
+
+By default, CMake assumes both a C and C++ compiler are required.
+This is not needed for mraa because it only provides C++ header
+files.
+
+Signed-off-by: Pieterjan Camerlynck <[email protected]>

Please indicate the status with upstream of the patch (submitted/merged/etc) and a ref. to the submission/discussion if any. This way, it will make easier bumping the package and this patch.

Quoted 24 lines
package/mraa/0001-do-not-require-cpp-compiler.patch new file +18 -0
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9860556..34d8e16 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ cmake_minimum_required (VERSION 2.8)
+-project (mraa)
++project (mraa C)
+
+ FIND_PACKAGE (Threads REQUIRED)
+
+--
+1.9.1
+
package/mraa/Config.in new file +0 -0
new file mode 100644
index 0000000..9e8918a

package/mraa/Config.in line 4

Quoted 4 lines
package/mraa/Config.in new file +4 -0
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_MRAA
+       bool "mraa"
+       depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on !BR2_STATIC_LIBS

Looping back with upstream [1], it seems there is no real reason to only build shared object libs.
Consider dropping this "depends on" and picking up [2]. ;-)

package/mraa/Config.in line 15

Quoted 11 lines
package/mraa/Config.in new file +11 -0
+       depends on BR2_arm || BR2_i386 || BR2_x86_64
+       help
+         mraa is a C/C++ library with bindings to javascript & python
+         to interface with the IO on Galileo, Edison & other platforms,
+         with a structured and sane API where port names/numbering matches
+         the board that you are on.
+
+         http://iotdk.intel.com/docs/master/mraa
+
+comment "mraa needs a toolchain w/ threads, dynamic library"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS

... and don't forget to update the comment ;)

Quoted 29 lines
package/mraa/mraa.mk new file +22 -1
new file mode 100644
index 0000000..9f3b953
@@ -0,0 +1,22 @@
+################################################################################
+#
+# mraa
+#
+################################################################################
+
+MRAA_VERSION = v0.9.0
+MRAA_SITE = $(call github,intel-iot-devkit,mraa,$(MRAA_VERSION))
+MRAA_LICENSE = MIT
+MRAA_LICENSE_FILES = COPYING
+MRAA_INSTALL_STAGING = YES
+
+MRAA_CONF_OPTS += \
+       -DBUILDSWIG=OFF \
+       -DUSBPLAT=OFF \
+       -DFTDI4222=OFF \
+       -DIPK=OFF \
+       -DRPM=OFF \
+       -DENABLEEXAMPLES=OFF \
+       -DTESTS=OFF
+
+$(eval $(cmake-package))
--
Quoted 2 lines

1.9.1

[1] https://github.com/intel-iot-devkit/mraa/commit/d1ceeae4e3d830a4867da560b8da3ad5fa7fa8fb#commitcomment-15275905
[2] https://github.com/intel-iot-devkit/mraa/commit/86a0e10c037e5c069c48012f169f9e8e2587a0ef

Quoted 4 lines

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

Regards,

Signature · 1 line
Samuel
#5 lore raw

PATCH v3 1/1 mraa: new package

In reply to Pieterjan Camerlynck

mraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

---
Changes v2->v3:
- add 0001-cmake-build-shared-libs-by-default-on-linux.patch Thank you Samuel Martin!
- add 0002-CMakeLists.txt-do-not-require-a-CXX-compiler.patch
- remove !BR2_STATIC_LIBS dependency

Changes v1->v2:
- rename libmraa to mraa
- remove C++ compiler dependency
- depend on BR2_arm instead of BR2_ARM_CPU_ARMV7A

---
 package/Config.in                                  |  1 +
 ...ake-build-shared-libs-by-default-on-linux.patch | 53 ++++++++++++++++++++
 ...keLists.txt-do-not-require-a-CXX-compiler.patch | 57 ++++++++++++++++++++++
 package/mraa/Config.in                             | 14 ++++++
 package/mraa/mraa.mk                               | 22 +++++++++
 5 files changed, 147 insertions(+)
 create mode 100644 package/mraa/0001-cmake-build-shared-libs-by-default-on-linux.patch
 create mode 100644 package/mraa/0002-CMakeLists.txt-do-not-require-a-CXX-compiler.patch
 create mode 100644 package/mraa/Config.in
 create mode 100644 package/mraa/mraa.mk
package/Config.in +1 -0
index 442021f..06ed4a8 100644
@@ -946,6 +946,7 @@ menu "Hardware handling"
 	source "package/libusb-compat/Config.in"
 	source "package/libv4l/Config.in"
 	source "package/libxkbcommon/Config.in"
+	source "package/mraa/Config.in"
 	source "package/mtdev/Config.in"
 	source "package/ne10/Config.in"
 	source "package/neardal/Config.in"
package/mraa/0001-cmake-build-shared-libs-by-default-on-linux.patch new file +53 -0

53 lines not on this page · raw message

package/mraa/0002-CMakeLists.txt-do-not-require-a-CXX-compiler.patch new file +57 -0

57 lines not on this page · raw message

package/mraa/Config.in new file +14 -0
new file mode 100644
index 0000000..2e5d3b1
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_MRAA
+	bool "mraa"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_arm || BR2_i386 || BR2_x86_64
+	help
+	  mraa is a C/C++ library with bindings to javascript & python
+	  to interface with the IO on Galileo, Edison & other platforms,
+	  with a structured and sane API where port names/numbering matches
+	  the board that you are on.
+
+	  http://iotdk.intel.com/docs/master/mraa
+
+comment "mraa needs a toolchain w/ threads"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
package/mraa/mraa.mk new file +22 -0
new file mode 100644
index 0000000..9f3b953
@@ -0,0 +1,22 @@
+################################################################################
+#
+# mraa
+#
+################################################################################
+
+MRAA_VERSION = v0.9.0
+MRAA_SITE = $(call github,intel-iot-devkit,mraa,$(MRAA_VERSION))
+MRAA_LICENSE = MIT
+MRAA_LICENSE_FILES = COPYING
+MRAA_INSTALL_STAGING = YES
+
+MRAA_CONF_OPTS += \
+	-DBUILDSWIG=OFF \
+	-DUSBPLAT=OFF \
+	-DFTDI4222=OFF \
+	-DIPK=OFF \
+	-DRPM=OFF \
+	-DENABLEEXAMPLES=OFF \
+	-DTESTS=OFF
+
+$(eval $(cmake-package))
Signature · 1 line
1.9.1
#7 lore raw

PATCH v3 1/1 mraa: new package

In reply to Pieterjan Camerlynck
Quoted 4 lines · Pieterjan Camerlynck

mraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

One small additional comment below.

[snip]

Quoted 8 lines
package/mraa/mraa.mk new file +2 -0
new file mode 100644
index 0000000..9f3b953
@@ -0,0 +1,22 @@
+################################################################################
+#

package/mraa/mraa.mk line 12

Quoted 10 lines
package/mraa/mraa.mk new file +10 -0
+# mraa
+#
+################################################################################
+
+MRAA_VERSION = v0.9.0
+MRAA_SITE = $(call github,intel-iot-devkit,mraa,$(MRAA_VERSION))
+MRAA_LICENSE = MIT
+MRAA_LICENSE_FILES = COPYING
+MRAA_INSTALL_STAGING = YES
+

It might be good to add:

# USBPLAT only makes sense with FTDI4222, which requires the ftd2xx library,

# which doesn't exist in buildroot

Regards,
Arnout

Quoted 11 lines
package/mraa/mraa.mk new file +10 -0
+MRAA_CONF_OPTS += \
+	-DBUILDSWIG=OFF \
+	-DUSBPLAT=OFF \
+	-DFTDI4222=OFF \
+	-DIPK=OFF \
+	-DRPM=OFF \
+	-DENABLEEXAMPLES=OFF \
+	-DTESTS=OFF
+
+$(eval $(cmake-package))
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
#8 lore raw

PATCH v4 1/1 mraa: new package

In reply to Pieterjan Camerlynck

mraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

---
Changes v3->v4:
- add comment about USBPLAT and FTDI4222 to mraa.mk

Changes v2->v3:
- add 0001-cmake-build-shared-libs-by-default-on-linux.patch Thank you Samuel Martin!
- add 0002-CMakeLists.txt-do-not-require-a-CXX-compiler.patch
- remove !BR2_STATIC_LIBS dependency

Changes v1->v2:
- rename libmraa to mraa
- remove C++ compiler dependency
- depend on BR2_arm instead of BR2_ARM_CPU_ARMV7A

---
 package/Config.in                                  |  1 +
 ...ake-build-shared-libs-by-default-on-linux.patch | 53 ++++++++++++++++++++
 ...keLists.txt-do-not-require-a-CXX-compiler.patch | 57 ++++++++++++++++++++++
 package/mraa/Config.in                             | 14 ++++++
 package/mraa/mraa.mk                               | 25 ++++++++++
 5 files changed, 150 insertions(+)
 create mode 100644 package/mraa/0001-cmake-build-shared-libs-by-default-on-linux.patch
 create mode 100644 package/mraa/0002-CMakeLists.txt-do-not-require-a-CXX-compiler.patch
 create mode 100644 package/mraa/Config.in
 create mode 100644 package/mraa/mraa.mk
package/Config.in +1 -0
index 442021f..06ed4a8 100644
@@ -946,6 +946,7 @@ menu "Hardware handling"
 	source "package/libusb-compat/Config.in"
 	source "package/libv4l/Config.in"
 	source "package/libxkbcommon/Config.in"
+	source "package/mraa/Config.in"
 	source "package/mtdev/Config.in"
 	source "package/ne10/Config.in"
 	source "package/neardal/Config.in"
package/mraa/0001-cmake-build-shared-libs-by-default-on-linux.patch new file +53 -0

53 lines not on this page · raw message

package/mraa/0002-CMakeLists.txt-do-not-require-a-CXX-compiler.patch new file +57 -0

57 lines not on this page · raw message

package/mraa/Config.in new file +14 -0
new file mode 100644
index 0000000..2e5d3b1
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_MRAA
+	bool "mraa"
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_arm || BR2_i386 || BR2_x86_64
+	help
+	  mraa is a C/C++ library with bindings to javascript & python
+	  to interface with the IO on Galileo, Edison & other platforms,
+	  with a structured and sane API where port names/numbering matches
+	  the board that you are on.
+
+	  http://iotdk.intel.com/docs/master/mraa
+
+comment "mraa needs a toolchain w/ threads"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
package/mraa/mraa.mk new file +25 -0
new file mode 100644
index 0000000..299beb0
@@ -0,0 +1,25 @@
+################################################################################
+#
+# mraa
+#
+################################################################################
+
+MRAA_VERSION = v0.9.0
+MRAA_SITE = $(call github,intel-iot-devkit,mraa,$(MRAA_VERSION))
+MRAA_LICENSE = MIT
+MRAA_LICENSE_FILES = COPYING
+MRAA_INSTALL_STAGING = YES
+
+# USBPLAT only makes sense with FTDI4222, which requires the ftd2xx library,
+# which doesn't exist in buildroot
+
+MRAA_CONF_OPTS += \
+	-DBUILDSWIG=OFF \
+	-DUSBPLAT=OFF \
+	-DFTDI4222=OFF \
+	-DIPK=OFF \
+	-DRPM=OFF \
+	-DENABLEEXAMPLES=OFF \
+	-DTESTS=OFF
+
+$(eval $(cmake-package))
Signature · 1 line
1.9.1
#9 lore raw

PATCH v4 1/1 mraa: new package

Quoted 5 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Pieterjan" == Pieterjan Camerlynck <[email protected]> writes:

mraa provides a unified interface for IO on Galileo, Edison, Raspberry Pi and others

Quoted 7 lines

---
Changes v3->v4:
- add comment about USBPLAT and FTDI4222 to mraa.mk

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard