aboutsummaryrefslogtreecommitdiff
path: root/libs/libcanfestival
diff options
context:
space:
mode:
authorAnton Glukhov <anton.a.glukhov@gmail.com>2015-09-26 04:50:40 +0300
committerAnton Glukhov <anton.a.glukhov@gmail.com>2015-09-26 04:50:40 +0300
commitce7ae15a98646cd334c1301f58eb20955f4c3ecf (patch)
tree69352ac95bf9e50d5aee38a4b8892b00da7d048d /libs/libcanfestival
parente16d7305dd8f67bf00ffc60f8bd0b5b38fe2cdf7 (diff)
Canfestival library: add new package
Signed-off-by: Anton Glukhov <anton.a.glukhov@gmail.com>
Diffstat (limited to 'libs/libcanfestival')
-rw-r--r--libs/libcanfestival/Makefile68
-rw-r--r--libs/libcanfestival/patches/001-sigval-ref-fix.patch11
-rw-r--r--libs/libcanfestival/patches/002-makefile-gcc-linker.patch33
3 files changed, 112 insertions, 0 deletions
diff --git a/libs/libcanfestival/Makefile b/libs/libcanfestival/Makefile
new file mode 100644
index 000000000..6d9ce49ea
--- /dev/null
+++ b/libs/libcanfestival/Makefile
@@ -0,0 +1,68 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libcanfestival
+PKG_RELEASE:=1
+
+PKG_SOURCE_PROTO:=hg
+PKG_SOURCE_URL:=http://dev.automforge.net/CanFestival-3
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)
+PKG_SOURCE_VERSION:=8bfe0ac00cdb
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.bz2
+
+PKG_MAINTAINER:=Anton Glukhov <anton.a.glukhov@gmail.com>
+PKG_LICENSE:=LGPL-2.1+
+PKG_LICENSE_FILE:=LICENCE
+
+PKG_FIXUP:=autoreconf
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libcanfestival
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=Free software CANopen library
+ URL:=http://canfestival.org
+ DEPENDS:=+libpthread +librt
+endef
+
+define Package/libcanfestival/description
+ CanFestival library
+endef
+
+TARGET_CFLAGS += $(FPIC)
+
+CONFIGURE_ARGS := \
+ --cc=$(TARGET_CC) \
+ --cxx=$(TARGET_CXX) \
+ --ld=$(TARGET_CC) \
+ --arch=$(ARCH) \
+ --os=Linux \
+ --kerneldir=$(LINUX_DIR) \
+ --prefix=/usr \
+ --target=unix \
+ --can=socket \
+ --timers=unix \
+ --debug=ERR \
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
+
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
+endef
+
+define Package/libcanfestival/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcanfestival_can_socket.so $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libcanfestival))
diff --git a/libs/libcanfestival/patches/001-sigval-ref-fix.patch b/libs/libcanfestival/patches/001-sigval-ref-fix.patch
new file mode 100644
index 000000000..7e15ff167
--- /dev/null
+++ b/libs/libcanfestival/patches/001-sigval-ref-fix.patch
@@ -0,0 +1,11 @@
+--- a/drivers/timers_unix/timers_unix.c
++++ b/drivers/timers_unix/timers_unix.c
+@@ -33,7 +33,7 @@
+ }
+ }
+
+-void timer_notify(sigval_t val)
++void timer_notify(void)
+ {
+ if(gettimeofday(&last_sig,NULL)) {
+ perror("gettimeofday()");
diff --git a/libs/libcanfestival/patches/002-makefile-gcc-linker.patch b/libs/libcanfestival/patches/002-makefile-gcc-linker.patch
new file mode 100644
index 000000000..129743f08
--- /dev/null
+++ b/libs/libcanfestival/patches/002-makefile-gcc-linker.patch
@@ -0,0 +1,33 @@
+--- a/examples/TestMasterMicroMod/Makefile.in
++++ b/examples/TestMasterMicroMod/Makefile.in
+@@ -56,7 +56,7 @@
+
+
+ $(TESTMASTERMICROMOD): $(OBJS)
+- $(LD) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
++ $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
+
+
+ TestMaster.c: TestMaster.od
+--- a/examples/TestMasterSlave/Makefile.in
++++ b/examples/TestMasterSlave/Makefile.in
+@@ -65,7 +65,7 @@
+
+
+ $(TESTMASTERSLAVE): $(OBJS)
+- $(LD) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
++ $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
+
+ TestSlave.c: TestSlave.od
+ $(MAKE) -C ../../objdictgen gnosis
+--- a/examples/CANOpenShell/Makefile.in
++++ b/examples/CANOpenShell/Makefile.in
+@@ -64,7 +64,7 @@
+ $(MAKE) -C ../../drivers/$(TARGET) libcanfestival_$(TARGET).a
+
+ $(CANOPENSHELL): $(OBJS)
+- $(LD) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
++ $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ $(OBJS) $(EXE_CFLAGS)
+ mkdir -p Debug; cp $(CANOPENSHELL) Debug
+
+ CANOpenShellMasterOD.c: CANOpenShellMasterOD.od