diff --git a/openwrt/package/Config.in b/openwrt/package/Config.in index 934c759a1..c60605556 100644 --- a/openwrt/package/Config.in +++ b/openwrt/package/Config.in @@ -222,6 +222,7 @@ source "package/setpwc/Config.in" comment "Serial communications & terminal emulation" source "package/microcom/Config.in" source "package/picocom/Config.in" +source "package/serdisplib/Config.in" source "package/setserial/Config.in" comment "Utilities" diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile index 7203d9f94..7168c3f55 100644 --- a/openwrt/package/Makefile +++ b/openwrt/package/Makefile @@ -177,6 +177,7 @@ package-$(BR2_PACKAGE_SCDP) += scdp package-$(BR2_PACKAGE_SCREEN) += screen package-$(BR2_PACKAGE_SDK) += sdk package-$(BR2_PACKAGE_SER) += ser +package-$(BR2_PACKAGE_SERDISPLIB) += serdisplib package-$(BR2_PACKAGE_SETPWC) += setpwc package-$(BR2_PACKAGE_SETSERIAL) += setserial package-$(BR2_PACKAGE_SHAT) += shat diff --git a/openwrt/package/serdisplib/Config.in b/openwrt/package/serdisplib/Config.in new file mode 100644 index 000000000..3fb41b37f --- /dev/null +++ b/openwrt/package/serdisplib/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_SERDISPLIB + tristate "serdisplib........................ a library for controlling displays" + default m if CONFIG_DEVEL + help + serdisplib is a library to drive serial and parallel displays with built-in controllers. diff --git a/openwrt/package/serdisplib/Makefile b/openwrt/package/serdisplib/Makefile new file mode 100644 index 000000000..2c16775f9 --- /dev/null +++ b/openwrt/package/serdisplib/Makefile @@ -0,0 +1,55 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=serdisplib +PKG_VERSION:=1.96 +PKG_RELEASE:=1 +PKG_MD5SUM:=b074e02d8d63f34cba8ec45c23f63f78 + +PKG_SOURCE_URL:=http://dl.sourceforge.net/sourceforge/serdisplib +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_CAT:=zcat +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(TOPDIR)/package/rules.mk + +$(eval $(call PKG_template,SERDISPLIB,serdisplib,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) + +$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.prepared + (cd $(PKG_BUILD_DIR); \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS)" \ + CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --prefix=/usr \ + --without-libiconv-prefix \ + --without-libintl-prefix \ + --disable-nls \ + ); + touch $@ + +$(PKG_BUILD_DIR)/.built: + rm -rf $(PKG_INSTALL_DIR) + mkdir -p $(PKG_INSTALL_DIR)/usr/bin + mkdir -p $(PKG_INSTALL_DIR)/usr/lib + $(MAKE) -C $(PKG_BUILD_DIR)/src \ + prefix="$(PKG_INSTALL_DIR)/usr" + cp -fpR $(PKG_BUILD_DIR)/src/testserdisp $(PKG_INSTALL_DIR)/usr/bin + cp -fpR $(PKG_BUILD_DIR)/lib/libserdisp.so* $(PKG_INSTALL_DIR)/usr/lib + touch $@ + +$(IPKG_SERDISPLIB): + install -d -m0755 $(IDIR_SERDISPLIB)/usr/bin + cp -fpR $(PKG_INSTALL_DIR)/usr/bin/testserdisp $(IDIR_SERDISPLIB)/usr/bin + install -d -m0755 $(IDIR_SERDISPLIB)/usr/lib + cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libserdisp.so* $(IDIR_SERDISPLIB)/usr/lib + $(RSTRIP) $(IDIR_SERDISPLIB) + $(IPKG_BUILD) $(IDIR_SERDISPLIB) $(PACKAGE_DIR) + +mostlyclean: + make -C $(PKG_BUILD_DIR) clean + rm $(PKG_BUILD_DIR)/.built diff --git a/openwrt/package/serdisplib/ipkg/serdisplib.control b/openwrt/package/serdisplib/ipkg/serdisplib.control new file mode 100644 index 000000000..3fcddcc70 --- /dev/null +++ b/openwrt/package/serdisplib/ipkg/serdisplib.control @@ -0,0 +1,4 @@ +Package: serdisplib +Priority: optional +Section: libs +Description: A library for controlling displays diff --git a/openwrt/package/serdisplib/patches/100-io.patch b/openwrt/package/serdisplib/patches/100-io.patch new file mode 100644 index 000000000..5b78e10f2 --- /dev/null +++ b/openwrt/package/serdisplib/patches/100-io.patch @@ -0,0 +1,19 @@ +diff -ru serdisplib-1.96.orig/src/serdisp_connect.c serdisplib-1.96/src/serdisp_connect.c +--- serdisplib-1.96.orig/src/serdisp_connect.c 2005-10-07 20:40:50.000000000 +0200 ++++ serdisplib-1.96/src/serdisp_connect.c 2005-12-12 18:48:58.000000000 +0200 +@@ -60,6 +60,7 @@ + /* directIO only with linux and i386 */ + #if defined(__linux__) && (defined(__i386__) || defined(__x86_64__)) + #define __sd_linux_use_directIO__ 1 ++ #include + #endif + + +@@ -67,7 +68,6 @@ + #if defined(__linux__) + #include + #include +- #include + #include + #define OUTB(_d, _p) outb( (_d), (_p) ) + #define INB(_p) inb( (_p) ) diff --git a/openwrt/package/serdisplib/patches/101-test_shared.patch b/openwrt/package/serdisplib/patches/101-test_shared.patch new file mode 100644 index 000000000..af0cd5d38 --- /dev/null +++ b/openwrt/package/serdisplib/patches/101-test_shared.patch @@ -0,0 +1,14 @@ +diff -ru serdisplib-1.96.orig/src/Makefile.in serdisplib-1.96/src/Makefile.in +--- serdisplib-1.96.orig/src/Makefile.in 2005-10-19 01:12:42.000000000 +0200 ++++ serdisplib-1.96/src/Makefile.in 2005-12-12 19:18:12.000000000 +0200 +@@ -73,8 +73,8 @@ + $(CC) -fPIC -shared -o $(LIB_DIR)/$(LIB_SHARED) $(LIB_OBJECTS) + cd $(LIB_DIR) && $(LN_S) -f $(LIB_SHARED) $(LIB_NAME).so + +-testserdisp: $(LIB_DIR)/$(LIB_STATIC) $(OBJECTS) +- $(CC) -o testserdisp $(OBJECTS) $(LIB_DIR)/$(LIB_STATIC) ++testserdisp: $(LIB_DIR)/$(LIB_SHARED) $(OBJECTS) ++ $(CC) -o testserdisp $(OBJECTS) $(LIB_DIR)/$(LIB_SHARED) + + clean: + /bin/rm -f $(OBJECTS) $(LIB_OBJECTS) $(LIB_DIR)/*.a $(LIB_DIR)/*.so*