]> git.webhop.me Git - bs-cst-neutrino-hd.git/commitdiff
add target midnight commander (mc); fix ncurses for mc
authorMarkham <markham001@gmx.de>
Sun, 25 Mar 2018 20:04:01 +0000 (22:04 +0200)
committerMarkham <markham001@gmx.de>
Sun, 25 Mar 2018 20:04:01 +0000 (22:04 +0200)
archive-patches/libffi-3.2.1.patch [new file with mode: 0644]
archive-patches/libglib2-2.54.0-disable-tests.patch [new file with mode: 0644]
archive-patches/mc-4.8.20.patch [new file with mode: 0644]
make/applications.mk
make/archives.mk
make/environment.mk
make/libraries.mk
make/neutrino.mk
make/versions.mk

diff --git a/archive-patches/libffi-3.2.1.patch b/archive-patches/libffi-3.2.1.patch
new file mode 100644 (file)
index 0000000..d2bf723
--- /dev/null
@@ -0,0 +1,34 @@
+Submitted By:            Armin K. <krejzi at email dot com>
+Date:                    2012-03-29
+Initial Package Version: 3.0.10
+Upstream Status:         Not Submitted
+Origin:                  Self
+Description:             Makes package install headers into /usr/include instead 
+                         of /usr/lib/libffi-3.0.10/include
+
+--- libffi.orig/include/Makefile.in    2011-08-23 16:28:35.000000000 +0200
++++ libffi/include/Makefile.in 2012-03-29 19:57:53.919343783 +0200
+@@ -314,7 +314,7 @@
+ AUTOMAKE_OPTIONS = foreign
+ DISTCLEANFILES = ffitarget.h
+ EXTRA_DIST = ffi.h.in ffi_common.h
+-includesdir = $(libdir)/@PACKAGE_NAME@-@PACKAGE_VERSION@/include
++includesdir = $(includedir)
+ nodist_includes_HEADERS = ffi.h ffitarget.h
+ all: all-am
+--- libffi.orig/libffi.pc.in   2011-08-22 20:38:12.000000000 +0200
++++ libffi/libffi.pc.in        2012-03-29 19:57:18.263549738 +0200
+@@ -2,10 +2,10 @@
+ exec_prefix=@exec_prefix@
+ libdir=@libdir@
+ toolexeclibdir=@toolexeclibdir@
+-includedir=${libdir}/@PACKAGE_NAME@-@PACKAGE_VERSION@/include
++includedir=@includedir@
+ Name: @PACKAGE_NAME@
+ Description: Library supporting Foreign Function Interfaces
+ Version: @PACKAGE_VERSION@
+ Libs: -L${toolexeclibdir} -lffi
+-Cflags: -I${includedir}
++Cflags 
diff --git a/archive-patches/libglib2-2.54.0-disable-tests.patch b/archive-patches/libglib2-2.54.0-disable-tests.patch
new file mode 100644 (file)
index 0000000..0bbcc23
--- /dev/null
@@ -0,0 +1,49 @@
+--- a/gio/Makefile.am
++++ b/gio/Makefile.am
+@@ -244,7 +244,7 @@
+ platform_deps += win32/libgiowin32.la
+ endif
+-SUBDIRS += . tests
++SUBDIRS += .
+ if HAVE_FAM
+ SUBDIRS += fam
+--- a/glib/Makefile.am
++++ b/glib/Makefile.am
+@@ -33,8 +33,8 @@
+ MAYBE_PCRE = pcre 
+ endif
+-SUBDIRS = libcharset $(PRINTF_SUBDIR) $(MAYBE_PCRE) update-pcre . tests
+-DIST_SUBDIRS = libcharset gnulib pcre update-pcre tests
++SUBDIRS = libcharset $(PRINTF_SUBDIR) $(MAYBE_PCRE) update-pcre .
++DIST_SUBDIRS = libcharset gnulib pcre update-pcre
+ AM_CPPFLAGS =                                 \
+       $(glib_INCLUDES)                \
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -6,8 +6,8 @@
+ ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS}
+-SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests
+-DIST_SUBDIRS = $(SUBDIRS) build win32
++SUBDIRS = . m4macros glib gmodule gthread gobject gio
++DIST_SUBDIRS = $(SUBDIRS) build
+ bin_SCRIPTS = glib-gettextize
+--- a/configure.ac
++++ b/configure.ac
+@@ -63,7 +63,7 @@
+ # Save this value here, since automake will set cflags later
+ cflags_set=${CFLAGS:+set}
+-AM_INIT_AUTOMAKE([1.11 -Wno-portability no-define no-dist-gzip dist-xz tar-ustar])
++AM_INIT_AUTOMAKE([1.15 -Wno-portability no-define no-dist-gzip dist-xz tar-ustar])
+ AM_MAINTAINER_MODE([enable])
+ # Support silent build rules. Disable
+
diff --git a/archive-patches/mc-4.8.20.patch b/archive-patches/mc-4.8.20.patch
new file mode 100644 (file)
index 0000000..9c73fe6
--- /dev/null
@@ -0,0 +1,32 @@
+--- a/src/vfs/extfs/extfs.c
++++ b/src/vfs/extfs/extfs.c
+@@ -1568,8 +1568,6 @@
+      * appear on screen. */
+     if (dir == NULL)
+     {
+-        if (!silent)
+-            fprintf (stderr, _("Warning: cannot open %s directory\n"), dirname);
+         g_free (dirname);
+         return FALSE;
+     }
+--- a/src/vfs/sfs/sfs.c
++++ b/src/vfs/sfs/sfs.c
+@@ -432,7 +432,6 @@
+     if (cfg == NULL)
+     {
+-        fprintf (stderr, _("%s: Warning: file %s not found\n"), "sfs_init()", mc_sfsini);
+         g_free (mc_sfsini);
+         return 0;
+     }
+--- a/src/editor/syntax.c
++++ b/src/editor/syntax.c
+@@ -1488,8 +1488,6 @@
+     if (r == -1)
+     {
+         edit_free_syntax_rules (edit);
+-        message (D_ERROR, _("Load syntax file"),
+-                 _("Cannot open file %s\n%s"), f, unix_error_string (errno));
+     }
+     else if (r != 0)
+     {
index b392f075e51cd8bbd9c99c29d9a12fb288273520..26d719484addac6e56c092f2e9b200c7de0b6fc5 100755 (executable)
@@ -740,6 +740,37 @@ $(D)/portmap: $(ARCHIVE)/portmap-$(PORTMAP_VER).tgz
        $(REMOVE)/portmap_$(PORTMAP_VER)
        $(TOUCH)
 
+#
+# Midnight Commander
+#
+$(D)/mc: $(D)/libncurses $(D)/libglib2 $(ARCHIVE)/mc-$(MC_VER).tar.xz | $(TARGETPREFIX)
+       $(START_BUILD)
+       $(REMOVE)/mc-$(MC_VER)
+       $(UNTAR)/mc-$(MC_VER).tar.xz
+       set -e; cd $(BUILD_TMP)/mc-$(MC_VER); \
+               $(PATCH)/mc-$(MC_VER).patch; \
+               autoreconf -fi; \
+               $(CONFIGURE) \
+                       --prefix= \
+                       --mandir=/.remove \
+                       --sysconfdir=/var/etc \
+                       --with-homedir=/var/tuxbox/config/mc \
+                       --without-gpm-mouse \
+                       --disable-doxygen-doc \
+                       --disable-doxygen-dot \
+                       --disable-doxygen-html \
+                       --enable-charset \
+                       --disable-nls \
+                       --with-screen=ncurses \
+                       --without-x \
+               ; \
+               $(MAKE) all; \
+               $(MAKE) install DESTDIR=$(TARGETPREFIX)
+       rm -rf $(TARGETPREFIX)/usr/share/mc/examples
+       find $(TARGETPREFIX)/usr/share/mc/skins -type f ! -name default.ini | xargs --no-run-if-empty rm
+       $(REMOVE)/mc-$(MC_VER)
+       $(TOUCH)
+
 #
 # ofgwrite
 #
index bfe21b6e579b2683cadbfd97a10929683f07ad0d..1b023d41ec74dd891ee012131820ad8ccbb06edb 100755 (executable)
@@ -67,6 +67,9 @@ $(ARCHIVE)/gd-$(GD_VER).tar.gz:
 $(ARCHIVE)/gettext-$(GETTEXT_VER).tar.xz:
        $(WGET) http://ftp.gnu.org/pub/gnu/gettext/gettext-$(GETTEXT_VER).tar.xz
 
+$(ARCHIVE)/libffi-$(LIBFFI_VER).tar.gz:
+       $(WGET) ftp://sourceware.org/pub/libffi/libffi-$(LIBFFI_VER).tar.gz
+
 $(ARCHIVE)/libjpeg-turbo-$(JPEG_TURBO_VER).tar.gz:
        $(WGET) http://sourceforge.net/projects/libjpeg-turbo/files/$(JPEG_TURBO_VER)/libjpeg-turbo-$(JPEG_TURBO_VER).tar.gz
 
@@ -186,6 +189,9 @@ $(ARCHIVE)/util-linux-2.20.tar.bz2:
 $(ARCHIVE)/hddtemp-0.3-beta15.tar.bz2:
        $(WGET) http://www.fhloston-paradise.de/hddtemp-0.3-beta15.tar.bz2
 
+$(ARCHIVE)/mc-$(MC_VER).tar.xz:
+       $(WGET) ftp.midnight-commander.org/mc-$(MC_VER).tar.xz
+
 $(ARCHIVE)/module-init-tools-$(MODULE_INIT_TOOLS_VER).tar.bz2:
        $(WGET) ftp.europeonline.com/pub/linux/utils/kernel/module-init-tools/module-init-tools-$(MODULE_INIT_TOOLS_VER).tar.bz2
 
index 4fd84bbb1b7dbb817dd0929d75154b8f7d3694aa..81cf941e6d4ac2f145d5830377f89986ff943baf 100755 (executable)
@@ -159,8 +159,9 @@ PKG_CONFIG_LIBDIR = $(TARGETPREFIX)/lib
 PKG_CONFIG_PATH = $(PKG_CONFIG_LIBDIR)/pkgconfig
 
 # helper-"functions":
-REWRITE_LIBTOOL = sed -i "s,^libdir=.*,libdir='$(TARGETLIB)'," $(TARGETLIB)
-REWRITE_PKGCONF = sed -i "s,^prefix=.*,prefix='$(TARGETPREFIX)',"
+REWRITE_LIBTOOL    = sed -i "s,^libdir=.*,libdir='$(TARGETLIB)'," $(TARGETLIB)
+REWRITE_LIBTOOLDEP = sed -i -e "s,\(^dependency_libs='\| \|-L\|^dependency_libs='\)/lib,\ $(TARGETLIB),g" $(TARGETLIB)
+REWRITE_PKGCONF    = sed -i "s,^prefix=.*,prefix='$(TARGETPREFIX)',"
 # unpack tarballs, clean up
 UNTAR = tar -C $(BUILD_TMP) -xf $(ARCHIVE)
 REMOVE = rm -rf $(BUILD_TMP)
index 8b8549cdf2df3027960c6ad1e6b993429fe8d858..528a8955913eceb46137924a5e1c531cce38a53a 100755 (executable)
@@ -42,13 +42,16 @@ $(D)/libncurses: $(ARCHIVE)/ncurses-$(NCURSES_VER).tar.gz | ncurses-prereq $(TAR
                        --host=$(TARGET) \
                        --target=$(TARGET) \
                        --prefix= \
-                       --without-manpages \
-                       --with-terminfo-dirs=/usr/share/terminfo \
+                       --enable-pc-files \
+                       --with-pkg-config \
+                       --with-pkg-config-libdir=/lib/pkgconfig \
+                       --with-shared \
                        --disable-big-core \
+                       --without-manpages \
                        --without-debug \
                        --without-progs \
+                       --without-tests \
                        --without-ada \
-                       --with-shared \
                        --without-profile \
                        --disable-rpath \
                        --without-cxx-binding \
@@ -56,6 +59,15 @@ $(D)/libncurses: $(ARCHIVE)/ncurses-$(NCURSES_VER).tar.gz | ncurses-prereq $(TAR
                $(MAKE) libs HOSTCC=gcc HOSTLDFLAGS="$(TARGET_LDFLAGS)" \
                        HOSTCCFLAGS="$(TARGET_CFLAGS) -DHAVE_CONFIG_H -I../ncurses -DNDEBUG -D_GNU_SOURCE -I../include" && \
                $(MAKE) install.libs DESTDIR=$(TARGETPREFIX)
+       rm -rf $(HOSTPREFIX)/bin/ncurses*
+       rm -rf $(TARGETLIB)/libform* $(TARGETLIB)/libmenu* $(TARGETLIB)/libpanel*
+       rm -rf $(PKG_CONFIG_PATH)/form.pc $(PKG_CONFIG_PATH)/menu.pc $(PKG_CONFIG_PATH)/panel.pc
+       mv $(TARGETPREFIX)/bin/ncurses6-config $(HOSTPREFIX)/bin
+       $(REWRITE_PKGCONF) $(HOSTPREFIX)/bin/ncurses6-config
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/ncurses.pc
+       ln -sf ./ncurses/curses.h $(TARGETPREFIX)/include/curses.h
+       ln -sf ./ncurses/curses.h $(TARGETPREFIX)/include/ncurses.h
+       ln -sf ./ncurses/term.h $(TARGETPREFIX)/include/term.h
        $(REMOVE)/ncurses-$(NCURSES_VER)
        $(TOUCH)
 
@@ -840,6 +852,82 @@ $(D)/libfribidi: $(ARCHIVE)/fribidi-$(FRIBIDI_VER).tar.bz2 | $(TARGETPREFIX)
        $(REMOVE)/fribidi-$(FRIBIDI_VER)
        $(TOUCH)
 
+#
+# libffi
+#
+$(D)/libffi: $(ARCHIVE)/libffi-$(LIBFFI_VER).tar.gz
+       $(START_BUILD)
+       $(REMOVE)/libffi-$(LIBFFI_VER)
+       $(UNTAR)/libffi-$(LIBFFI_VER).tar.gz
+       set -e; cd $(BUILD_TMP)/libffi-$(LIBFFI_VER); \
+               $(PATCH)/libffi-$(LIBFFI_VER).patch; \
+               $(CONFIGURE) \
+                       --target=$(TARGET) \
+                       --prefix=/ \
+                       --mandir=/.remove \
+                       --infodir=/.remove \
+                       --disable-static \
+                       --enable-builddir=libffi \
+               ; \
+               $(MAKE); \
+               $(MAKE) install DESTDIR=$(TARGETPREFIX)
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/libffi.pc
+       $(REWRITE_LIBTOOL)/libffi.la
+       $(REMOVE)/libffi-$(LIBFFI_VER)
+       $(TOUCH)
+
+#
+# libglib2
+#
+$(D)/libglib2: $(D)/zlib $(D)/libffi $(ARCHIVE)/glib-$(LIBGLIB2_VER).tar.xz
+       $(START_BUILD)
+       $(REMOVE)/glib-$(LIBGLIB2_VER)
+       $(UNTAR)/glib-$(LIBGLIB2_VER).tar.xz
+       set -e; cd $(BUILD_TMP)/glib-$(LIBGLIB2_VER); \
+               echo "glib_cv_va_copy=no" > config.cache; \
+               echo "glib_cv___va_copy=yes" >> config.cache; \
+               echo "glib_cv_va_val_copy=yes" >> config.cache; \
+               echo "ac_cv_func_posix_getpwuid_r=yes" >> config.cache; \
+               echo "ac_cv_func_posix_getgrgid_r=yes" >> config.cache; \
+               echo "glib_cv_stack_grows=no" >> config.cache; \
+               echo "glib_cv_uscore=no" >> config.cache; \
+               $(PATCH)/libglib2-$(LIBGLIB2_VER)-disable-tests.patch; \
+               $(CONFIGURE) \
+                       --prefix= \
+                       --enable-static \
+                       --mandir=/.remove \
+                       --cache-file=config.cache \
+                       --disable-fam \
+                       --disable-libmount \
+                       --disable-gtk-doc \
+                       --disable-gtk-doc-html \
+                       --with-threads="posix" \
+                       --with-html-dir=/.remove \
+                       --with-pcre=internal \
+               ; \
+               $(MAKE) all; \
+               $(MAKE) install DESTDIR=$(TARGETPREFIX)
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/glib-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gmodule-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gio-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gio-unix-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gmodule-export-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gmodule-no-export-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gobject-2.0.pc
+       $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gthread-2.0.pc
+       $(REWRITE_LIBTOOL)/libglib-2.0.la
+       $(REWRITE_LIBTOOL)/libgmodule-2.0.la
+       $(REWRITE_LIBTOOL)/libgio-2.0.la
+       $(REWRITE_LIBTOOL)/libgobject-2.0.la
+       $(REWRITE_LIBTOOL)/libgthread-2.0.la
+       $(REWRITE_LIBTOOLDEP)/libglib-2.0.la
+       $(REWRITE_LIBTOOLDEP)/libgmodule-2.0.la
+       $(REWRITE_LIBTOOLDEP)/libgio-2.0.la
+       $(REWRITE_LIBTOOLDEP)/libgobject-2.0.la
+       $(REWRITE_LIBTOOLDEP)/libgthread-2.0.la
+       $(REMOVE)/glib-$(LIBGLIB2_VER)
+       $(TOUCH)
+
 $(D)/timezone: $(ARCHIVE)/tzdata$(TZ_VER).tar.gz | find-zic $(TARGETPREFIX)
        $(START_BUILD)
        mkdir -p $(BUILD_TMP)/timezone $(BUILD_TMP)/timezone/zoneinfo
index 8de5df6572da2e9e1cbcfb6b182aaef80c940f61..f1a1c8b3da1eede2035fefd08d1a2f08a01ffc05 100755 (executable)
@@ -88,6 +88,9 @@ ifeq ($(BOXTYPE), armbox)
                --with-stb-hal-includes=$(LH_OBJDIR)/include \
                --with-stb-hal-build=$(LH_OBJDIR)
 endif
+ifeq ($(BOXTYPE), armbox)
+NEUTRINO_DEPS += $(D)/mc
+endif
 
 neutrino-deps: $(NEUTRINO_DEPS)
 
index 20c4e3335a00cb217840e768949af283abef1e3c..f6962c0d47ae0c58afc46a4d9e6f270ddb76181b 100644 (file)
@@ -82,6 +82,8 @@ LIBASS_VER=0.14.0
 # libdvbsi++; libdvbsi++ is a open source C++ library for parsing DVB Service Information and MPEG-2 Program Specific Information.
 LIBDVBSI_GIT=ff57e5
 
+LIBFFI_VER = 3.2.1
+
 # libpng; reference library for reading and writing PNGs
 LIBPNG_VER=1.6.34
 
@@ -120,6 +122,9 @@ LUA_FEEDPARSER_TAG=9b284bc
 LUASOCKET_VER = 2.0.2
 LUASOCKET_GIT = 5a17f79
 
+# Midnight Commander
+MC_VER = 4.8.20
+
 # mtd-utils for the host and target
 MTD_UTILS_VER = 1.5.2