# # Gnuplot package for OpenWrt. # # Adapted to support LibGGI/SVGAlib video output by # David Kuehling # # License GPLv2 or later. NO WARRANTY. # # Todo for GGI support (svgalib works, so GGI is disabled for now) # # - After 21acf8eb423af24ca00835192239d50f2e4570a8 I once had proper plot # display from Octave (but didn't came back to the console afterwards). # Even after building again with mouse support, this isn't working any more. # Why? Must be related to the 050-ggi-close.patch but that patch is doing # close to nothing. # # - Somebody seems to mess with the console/stdin. Even when using # GGI_FBDEV_OPTIONS=-noinput and setting GGI_NEWVT. Can be easily tested # when launching from ssh. # # - When using GGI_NEWVT in Octave, it seems like somebody is injecting text # or something into Octave's stdin or into the file handles Octave uses. It # would abort with some strange error message noting that it doesn't know # some corrupted command name (stuff like "setset"). Very frightening. include $(TOPDIR)/rules.mk PKG_NAME:=gnuplot-gfx PKG_ORIG_NAME=gnuplot PKG_VERSION:=4.4.2 PKG_RELEASE:=3 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_ORIG_NAME)-$(PKG_VERSION) HOST_BUILD_DIR = $(BUILD_DIR_HOST)/$(PKG_ORIG_NAME)-$(PKG_VERSION) PKG_FIXUP:=libtool PKG_INSTALL=1 PKG_SOURCE:=$(PKG_ORIG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/gnuplot PKG_MD5SUM:=a4f0dd89f9b9334890464f687ddd9f50 PKG_BUILD_DEPENDS:= gnuplot-gfx/host include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk define Package/gnuplot-gfx/Default SECTION:=utils CATEGORY:=Utilities TITLE:=A portable command-line driven graphing utility URL:=http://sourceforge.net/projects/gnuplot/ endef define Package/gnuplot-gfx/Default/description Gnuplot is a portable command-line driven graphing utility for linux, OS/2, MS Windows, OSX, VMS, and many other platforms. This version is compiled to use LibGGI as default terminal, allowing gnuplot to draw directly to the Linux framebuffer. endef define Package/gnuplot-gfx $(call Package/gnuplot-gfx/Default) DEPENDS:=+libncurses +zlib +libpng +libfreetype +libgd $(INTL_DEPENDS) $(ICONV_DEPENDS) +svgalib TITLE+= endef define Package/gnuplot-gfx-gih $(call Package/gnuplot-gfx/Default) DEPENDS:=+gnuplot-gfx TITLE+=(integrated help) endef define Package/gnuplot-gfx-gih/description $(call Package/gnuplot-gfx/Default/description) This package contains the documentation files needed for GNUplot\'s internal help system. endef ## ## Compile for the host ## # We need the doc2gih tool compiled on the *host* to get GNUplot's online # documentation when compiling for the target. HOST_CONFIGURE_ARGS += \ --without-x \ --without-tutorial \ --without-lisp-files \ --without-ggi \ --without-cairo \ --disable-wxwidgets \ --disable-rgip \ --disable-mgr \ --without-latex \ --without-lisp-files \ --without-row-help \ --without-tutorial HOST_CONFIGURE_VARS += DIST_CONTACT="David Kuehling " define Host/Configure $(call Host/Configure/Default) endef define Host/Compile $(MAKE) -C $(HOST_BUILD_DIR)/docs doc2gih alldoc2gih endef define Host/Install $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/ $(INSTALL_BIN) $(HOST_BUILD_DIR)/docs/{doc2gih,alldoc2gih} \ $(STAGING_DIR_HOST)/bin/ endef ## ## Compile for the target ## CONFIGURE_ARGS += \ --without-x \ --without-tutorial \ --without-lisp-files \ --without-ggi \ --without-cairo \ --disable-wxwidgets \ --disable-rgip \ --disable-mgr \ --without-latex \ --without-lisp-files \ --without-tutorial \ --without-row-help \ --without-lisp-files \ --without-ggi \ --with-linux-vga \ --with-gihdir=/usr/share/gnuplot # Without mouse, gnuplot works in console mode where it closes the graphics # device after keypress to get into text mode. This makes it impossible to # use Octave which relies on proper suspend/resume behaviour with multiplot. #--disable-mouse CONFIGURE_VARS += DIST_CONTACT="David Kuehling " TARGET_CPPFLAGS += -DDEFAULTTERM=\\\"linux\\\" # todo: insto cppflags TARGET_LDFLAGS+= \ -Wl,-rpath-link=$(STAGING_DIR)/usr/lib # todo: remove -j when stable MAKE_FLAGS += -j2 config m4 term src docs share # cannot disable mouse for ggi: compilation fails. (todo: fix) # --disable-mouse # Use via 'set terminal ggi S320x240x[C24/32]V320x240F1' (?) # how to set this as default? #TARGET_LDFLAGS += -Wl,-rpath-link -Wl,$(STAGING_DIR)/usr/lib TARGET_LDFLAGS += -lncursesw define Package/gnuplot-gfx/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnuplot $(1)/usr/bin/ endef define Package/gnuplot-gfx-gih/install $(INSTALL_DIR) $(1)/usr/share/gnuplot/ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnuplot/gnuplot.gih \ $(1)/usr/share/gnuplot/ endef $(eval $(call HostBuild)) $(eval $(call BuildPackage,gnuplot-gfx)) $(eval $(call BuildPackage,gnuplot-gfx-gih)) # The following comments configure the Emacs editor. Just ignore them. # Local Variables: # compile-command: "make -C ~/h/src/qi/openwrt-xburst package/gnuplot-gfx/compile -j2 V=99" # End: