* [Buildroot] [pull request] ncurses conversion + fix
@ 2010-04-30 0:42 llandwerlin at gmail.com
2010-04-30 0:42 ` [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure llandwerlin at gmail.com
2010-04-30 0:42 ` [Buildroot] [PATCH 2/2] ncurses: fix path to patch ncurses5-config llandwerlin at gmail.com
0 siblings, 2 replies; 8+ messages in thread
From: llandwerlin at gmail.com @ 2010-04-30 0:42 UTC (permalink / raw)
To: buildroot
Just some ncurses stuff...
Regards,
--
Lionel Landwerlin
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure
2010-04-30 0:42 [Buildroot] [pull request] ncurses conversion + fix llandwerlin at gmail.com
@ 2010-04-30 0:42 ` llandwerlin at gmail.com
2010-05-01 11:06 ` Thomas Petazzoni
2010-04-30 0:42 ` [Buildroot] [PATCH 2/2] ncurses: fix path to patch ncurses5-config llandwerlin at gmail.com
1 sibling, 1 reply; 8+ messages in thread
From: llandwerlin at gmail.com @ 2010-04-30 0:42 UTC (permalink / raw)
To: buildroot
From: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
---
package/ncurses/ncurses.mk | 187 +++++++++++++++-----------------------------
1 files changed, 64 insertions(+), 123 deletions(-)
diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk
index fb22c6c..944fcdb 100644
--- a/package/ncurses/ncurses.mk
+++ b/package/ncurses/ncurses.mk
@@ -23,99 +23,83 @@
# USA
# TARGETS
-NCURSES_VERSION:=5.6
-NCURSES_SITE:=$(BR2_GNU_MIRROR)/ncurses
-NCURSES_DIR:=$(BUILD_DIR)/ncurses-$(NCURSES_VERSION)
-NCURSES_SOURCE:=ncurses-$(NCURSES_VERSION).tar.gz
-NCURSES_CAT:=$(ZCAT)
+NCURSES_VERSION = 5.6
+NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses
+NCURSES_SOURCE = ncurses-$(NCURSES_VERSION).tar.gz
+NCURSES_INSTALL_STAGING = YES
+
+NCURSES_CONF_OPT = \
+ --with-shared \
+ --without-cxx \
+ --without-cxx-binding \
+ --without-ada \
+ --without-progs \
+ --disable-big-core \
+ --without-profile \
+ --disable-rpath \
+ --enable-echo \
+ --enable-const \
+ --enable-overwrite \
+ --enable-broken_linker
ifneq ($(BR2_PACKAGE_NCURSES_TARGET_HEADERS),y)
-NCURSES_WANT_STATIC=--disable-static
+NCURSES_CONF_OPT += --disable-static
endif
-$(DL_DIR)/$(NCURSES_SOURCE):
- $(call DOWNLOAD,$(NCURSES_SITE),$(NCURSES_SOURCE))
-
-$(NCURSES_DIR)/.patched: $(DL_DIR)/$(NCURSES_SOURCE)
- $(NCURSES_CAT) $(DL_DIR)/$(NCURSES_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
- #use the local tic and not whatever the build system was going to find.
- $(SED) 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \
- $(NCURSES_DIR)/misc/run_tic.in
- toolchain/patch-kernel.sh $(NCURSES_DIR) package/ncurses/ ncurses\*.patch
- $(CONFIG_UPDATE) $(NCURSES_DIR)
- touch $@
-
-$(NCURSES_DIR)/.configured: $(NCURSES_DIR)/.patched
- (cd $(NCURSES_DIR); rm -rf config.cache; \
- BUILD_CC="$(HOSTCC)" \
- $(TARGET_CONFIGURE_OPTS) \
- $(TARGET_CONFIGURE_ARGS) \
- ./configure $(QUIET) \
- --target=$(GNU_TARGET_NAME) \
- --host=$(REAL_GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=/usr \
- --exec-prefix=/usr \
- --bindir=/usr/bin \
- --sbindir=/usr/sbin \
- --libdir=/usr/lib \
- --libexecdir=/usr/lib \
- --sysconfdir=/etc \
- --datadir=/usr/share \
- --localstatedir=/var \
- --includedir=/usr/include \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --with-terminfo-dirs=/usr/share/terminfo \
- --with-default-terminfo-dir=/usr/share/terminfo \
- --with-shared --without-cxx --without-cxx-binding \
- --without-ada --without-progs --disable-big-core \
- $(DISABLE_NLS) $(DISABLE_LARGEFILE) \
- --without-profile --without-debug --disable-rpath \
- --enable-echo --enable-const --enable-overwrite \
- --enable-broken_linker \
- $(NCURSES_WANT_STATIC) \
- )
- touch $@
-
-$(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION): $(NCURSES_DIR)/.configured
- $(MAKE1) DESTDIR=$(STAGING_DIR) -C $(NCURSES_DIR) \
- libs panel menu form headers
+ifneq ($(BR2_ENABLE_DEBUG),y)
+NCURSES_CONF_OPT += --without-debug
+endif
-$(STAGING_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION): $(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION)
- $(MAKE1) \
- prefix=$(STAGING_DIR)/usr/ \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/usr/lib \
- datadir=$(STAGING_DIR)/usr/share \
- sysconfdir=$(STAGING_DIR)/etc \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/usr/lib \
- infodir=$(STAGING_DIR)/usr/info \
- mandir=$(STAGING_DIR)/usr/man \
- includedir=$(STAGING_DIR)/usr/include \
- gxx_include_dir=$(STAGING_DIR)/usr/include/c++ \
- ticdir=$(STAGING_DIR)/usr/share/terminfo \
- -C $(NCURSES_DIR) install
- chmod a-x $(NCURSES_DIR)/lib/libncurses.so*
+define NCURSES_PATCH_NCURSES_CONFIG
$(SED) 's^prefix="^prefix="$(STAGING_DIR)^' \
$(STAGING_DIR)/bin/ncurses5-config
- touch -c $@
+endef
+
+NCURSES_POST_BUILD_HOOKS += NCURSES_PATCH_NCURSES_CONFIG
+
+ifeq ($(BR2_HAVE_DEVFILES),y)
+define NCURSES_INSTALL_TARGET_DEVFILES
+ mkdir -p $(TARGET_DIR)/usr/include
+ cp -dpf $(NCURSES_DIR)/include/curses.h $(TARGET_DIR)/usr/include/curses.h
+ cp -dpf $(NCURSES_DIR)/include/ncurses_dll.h $(TARGET_DIR)/usr/include/ncurses_dll.h
+ cp -dpf $(NCURSES_DIR)/include/term.h $(TARGET_DIR)/usr/include/
+ cp -dpf $(NCURSES_DIR)/include/unctrl.h $(TARGET_DIR)/usr/include/
+ cp -dpf $(NCURSES_DIR)/include/termcap.h $(TARGET_DIR)/usr/include/
+ cp -dpf $(NCURSES_DIR)/lib/libncurses.a $(TARGET_DIR)/usr/lib/
+ (cd $(TARGET_DIR)/usr/lib; \
+ ln -fs libncurses.a libcurses.a; \
+ ln -fs libncurses.a libtermcap.a; \
+ )
+ (cd $(TARGET_DIR)/usr/include; ln -fs curses.h ncurses.h)
+ rm -f $(TARGET_DIR)/usr/lib/libncurses.so
+ (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.so.$(NCURSES_VERSION) libncurses.so)
+endef
+endif
-$(TARGET_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION): $(STAGING_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION)
- mkdir -p $(TARGET_DIR)/usr/lib
- cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/
ifeq ($(BR2_PACKAGE_NCURSES_TARGET_PANEL),y)
+define NCURSES_INSTALL_TARGET_PANEL
cp -dpf $(NCURSES_DIR)/lib/libpanel.so* $(TARGET_DIR)/usr/lib/
+endef
endif
+
ifeq ($(BR2_PACKAGE_NCURSES_TARGET_FORM),y)
+define NCURSES_INSTALL_TARGET_FORM
cp -dpf $(NCURSES_DIR)/lib/libform.so* $(TARGET_DIR)/usr/lib/
+endef
endif
+
ifeq ($(BR2_PACKAGE_NCURSES_TARGET_MENU),y)
+define NCURSES_INSTALL_TARGET_MENU
cp -dpf $(NCURSES_DIR)/lib/libmenu.so* $(TARGET_DIR)/usr/lib/
+endef
endif
+
+define NCURSES_INSTALL_TARGET_CMDS
+ mkdir -p $(TARGET_DIR)/usr/lib
+ cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/
+ $(NCURSES_INSTALL_TARGET_PANEL)
+ $(NCURSES_INSTALL_TARGET_FORM)
+ $(BR2_PACKAGE_NCURSES_TARGET_MENU)
ln -snf /usr/share/terminfo $(TARGET_DIR)/usr/lib/terminfo
mkdir -p $(TARGET_DIR)/usr/share/terminfo/x
cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm $(TARGET_DIR)/usr/share/terminfo/x
@@ -130,51 +114,8 @@ endif
cp -dpf $(STAGING_DIR)/usr/share/terminfo/a/ansi $(TARGET_DIR)/usr/share/terminfo/a
mkdir -p $(TARGET_DIR)/usr/share/terminfo/l
cp -dpf $(STAGING_DIR)/usr/share/terminfo/l/linux $(TARGET_DIR)/usr/share/terminfo/l
- -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $@
- touch -c $@
-
-$(NCURSES_DIR)/lib/libncurses.a: $(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION)
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libncurses.so*
+ $(NCURSES_INSTALL_TARGET_DEVFILES)
+endef # NCURSES_INSTALL_TARGET_CMDS
-$(TARGET_DIR)/usr/lib/libncurses.a: $(NCURSES_DIR)/lib/libncurses.a
- mkdir -p $(TARGET_DIR)/usr/include
- cp -dpf $(NCURSES_DIR)/include/curses.h $(TARGET_DIR)/usr/include/curses.h
- cp -dpf $(NCURSES_DIR)/include/ncurses_dll.h $(TARGET_DIR)/usr/include/ncurses_dll.h
- cp -dpf $(NCURSES_DIR)/include/term.h $(TARGET_DIR)/usr/include/
- cp -dpf $(NCURSES_DIR)/include/unctrl.h $(TARGET_DIR)/usr/include/
- cp -dpf $(NCURSES_DIR)/include/termcap.h $(TARGET_DIR)/usr/include/
- cp -dpf $(NCURSES_DIR)/lib/libncurses.a $(TARGET_DIR)/usr/lib/
- (cd $(TARGET_DIR)/usr/lib; \
- ln -fs libncurses.a libcurses.a; \
- ln -fs libncurses.a libtermcap.a; \
- )
- (cd $(TARGET_DIR)/usr/include; ln -fs curses.h ncurses.h)
- rm -f $(TARGET_DIR)/usr/lib/libncurses.so
- (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.so.$(NCURSES_VERSION) libncurses.so)
- -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION)
- touch -c $@
-
-ncurses: $(TARGET_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION) \
- $(if $(BR2_HAVE_DEVFILES),$(TARGET_DIR)/usr/lib/libncurses.a)
-
-ncurses-unpacked: $(NCURSES_DIR)/.patched
-
-ncurses-source: $(DL_DIR)/$(NCURSES_SOURCE)
-
-ncurses-clean:
- rm -f $(STAGING_DIR)/usr/lib/libncurses.so* $(TARGET_DIR)/usr/lib/libncurses.so*
- rm -rf $(STAGING_DIR)/usr/share/tabset $(TARGET_DIR)/usr/share/tabset
- rm -rf $(STAGING_DIR)/usr/share/terminfo $(TARGET_DIR)/usr/share/terminfo
- rm -rf $(TARGET_DIR)/usr/lib/terminfo
- -$(MAKE) -C $(NCURSES_DIR) clean
-
-ncurses-dirclean:
- rm -rf $(NCURSES_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_NCURSES),y)
-TARGETS+=ncurses
-endif
+$(eval $(call AUTOTARGETS,package,ncurses))
--
1.7.0.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH 2/2] ncurses: fix path to patch ncurses5-config
2010-04-30 0:42 [Buildroot] [pull request] ncurses conversion + fix llandwerlin at gmail.com
2010-04-30 0:42 ` [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure llandwerlin at gmail.com
@ 2010-04-30 0:42 ` llandwerlin at gmail.com
2010-05-01 11:07 ` Thomas Petazzoni
1 sibling, 1 reply; 8+ messages in thread
From: llandwerlin at gmail.com @ 2010-04-30 0:42 UTC (permalink / raw)
To: buildroot
From: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
---
package/ncurses/ncurses.mk | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk
index 944fcdb..8413672 100644
--- a/package/ncurses/ncurses.mk
+++ b/package/ncurses/ncurses.mk
@@ -52,10 +52,10 @@ endif
define NCURSES_PATCH_NCURSES_CONFIG
$(SED) 's^prefix="^prefix="$(STAGING_DIR)^' \
- $(STAGING_DIR)/bin/ncurses5-config
+ $(STAGING_DIR)/usr/bin/ncurses5-config
endef
-NCURSES_POST_BUILD_HOOKS += NCURSES_PATCH_NCURSES_CONFIG
+NCURSES_POST_STAGING_INSTALL_HOOKS += NCURSES_PATCH_NCURSES_CONFIG
ifeq ($(BR2_HAVE_DEVFILES),y)
define NCURSES_INSTALL_TARGET_DEVFILES
--
1.7.0.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure
2010-04-30 0:42 ` [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure llandwerlin at gmail.com
@ 2010-05-01 11:06 ` Thomas Petazzoni
2010-05-01 13:46 ` Lionel Landwerlin
2010-05-02 22:46 ` [Buildroot] [PATCH] " llandwerlin at gmail.com
0 siblings, 2 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2010-05-01 11:06 UTC (permalink / raw)
To: buildroot
On Fri, 30 Apr 2010 02:42:07 +0200
llandwerlin at gmail.com wrote:
> - #use the local tic and not whatever the build system was going to find.
> - $(SED) 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \
> - $(NCURSES_DIR)/misc/run_tic.in
Was this useless ?
> -$(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION): $(NCURSES_DIR)/.configured
> - $(MAKE1) DESTDIR=$(STAGING_DIR) -C $(NCURSES_DIR) \
> - libs panel menu form headers
It looks like a non-parallel make was used to build ncurses. Does using
the default make works ?
> +define NCURSES_INSTALL_TARGET_CMDS
> + mkdir -p $(TARGET_DIR)/usr/lib
> + cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/
> + $(NCURSES_INSTALL_TARGET_PANEL)
> + $(NCURSES_INSTALL_TARGET_FORM)
> + $(BR2_PACKAGE_NCURSES_TARGET_MENU)
This should be NCURSES_INSTALL_TARGET_MENU
Once this last point is fixed:
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH 2/2] ncurses: fix path to patch ncurses5-config
2010-04-30 0:42 ` [Buildroot] [PATCH 2/2] ncurses: fix path to patch ncurses5-config llandwerlin at gmail.com
@ 2010-05-01 11:07 ` Thomas Petazzoni
0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2010-05-01 11:07 UTC (permalink / raw)
To: buildroot
On Fri, 30 Apr 2010 02:42:08 +0200
llandwerlin at gmail.com wrote:
> From: Lionel Landwerlin <llandwerlin@gmail.com>
>
> Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure
2010-05-01 11:06 ` Thomas Petazzoni
@ 2010-05-01 13:46 ` Lionel Landwerlin
2010-05-02 22:46 ` [Buildroot] [PATCH] " llandwerlin at gmail.com
1 sibling, 0 replies; 8+ messages in thread
From: Lionel Landwerlin @ 2010-05-01 13:46 UTC (permalink / raw)
To: buildroot
Le samedi 01 mai 2010 ? 13:06 +0200, Thomas Petazzoni a ?crit :
> On Fri, 30 Apr 2010 02:42:07 +0200
> llandwerlin at gmail.com wrote:
>
> > - #use the local tic and not whatever the build system was going to find.
> > - $(SED) 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \
> > - $(NCURSES_DIR)/misc/run_tic.in
>
> Was this useless ?
It's now using $(HOST_DIR)/usr/bin/tic instead. It will be detected when
running configure.
>
> > -$(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION): $(NCURSES_DIR)/.configured
> > - $(MAKE1) DESTDIR=$(STAGING_DIR) -C $(NCURSES_DIR) \
> > - libs panel menu form headers
>
> It looks like a non-parallel make was used to build ncurses. Does using
> the default make works ?
Will change back to $(MAKE1).
>
> > +define NCURSES_INSTALL_TARGET_CMDS
> > + mkdir -p $(TARGET_DIR)/usr/lib
> > + cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/
> > + $(NCURSES_INSTALL_TARGET_PANEL)
> > + $(NCURSES_INSTALL_TARGET_FORM)
> > + $(BR2_PACKAGE_NCURSES_TARGET_MENU)
>
> This should be NCURSES_INSTALL_TARGET_MENU
damn !
>
> Once this last point is fixed:
> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> Thomas
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH] ncurses: convert to autotools infrastructure
2010-05-01 11:06 ` Thomas Petazzoni
2010-05-01 13:46 ` Lionel Landwerlin
@ 2010-05-02 22:46 ` llandwerlin at gmail.com
2010-05-03 6:43 ` Peter Korsgaard
1 sibling, 1 reply; 8+ messages in thread
From: llandwerlin at gmail.com @ 2010-05-02 22:46 UTC (permalink / raw)
To: buildroot
From: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
---
package/ncurses/ncurses.mk | 188 ++++++++++++++++----------------------------
1 files changed, 67 insertions(+), 121 deletions(-)
diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk
index fb22c6c..79560b1 100644
--- a/package/ncurses/ncurses.mk
+++ b/package/ncurses/ncurses.mk
@@ -23,99 +23,88 @@
# USA
# TARGETS
-NCURSES_VERSION:=5.6
-NCURSES_SITE:=$(BR2_GNU_MIRROR)/ncurses
-NCURSES_DIR:=$(BUILD_DIR)/ncurses-$(NCURSES_VERSION)
-NCURSES_SOURCE:=ncurses-$(NCURSES_VERSION).tar.gz
-NCURSES_CAT:=$(ZCAT)
+NCURSES_VERSION = 5.6
+NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses
+NCURSES_SOURCE = ncurses-$(NCURSES_VERSION).tar.gz
+NCURSES_INSTALL_STAGING = YES
+
+NCURSES_CONF_OPT = \
+ --with-shared \
+ --without-cxx \
+ --without-cxx-binding \
+ --without-ada \
+ --without-progs \
+ --disable-big-core \
+ --without-profile \
+ --disable-rpath \
+ --enable-echo \
+ --enable-const \
+ --enable-overwrite \
+ --enable-broken_linker
ifneq ($(BR2_PACKAGE_NCURSES_TARGET_HEADERS),y)
-NCURSES_WANT_STATIC=--disable-static
+NCURSES_CONF_OPT += --disable-static
endif
-$(DL_DIR)/$(NCURSES_SOURCE):
- $(call DOWNLOAD,$(NCURSES_SITE),$(NCURSES_SOURCE))
-
-$(NCURSES_DIR)/.patched: $(DL_DIR)/$(NCURSES_SOURCE)
- $(NCURSES_CAT) $(DL_DIR)/$(NCURSES_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
- #use the local tic and not whatever the build system was going to find.
- $(SED) 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \
- $(NCURSES_DIR)/misc/run_tic.in
- toolchain/patch-kernel.sh $(NCURSES_DIR) package/ncurses/ ncurses\*.patch
- $(CONFIG_UPDATE) $(NCURSES_DIR)
- touch $@
+ifneq ($(BR2_ENABLE_DEBUG),y)
+NCURSES_CONF_OPT += --without-debug
+endif
-$(NCURSES_DIR)/.configured: $(NCURSES_DIR)/.patched
- (cd $(NCURSES_DIR); rm -rf config.cache; \
- BUILD_CC="$(HOSTCC)" \
- $(TARGET_CONFIGURE_OPTS) \
- $(TARGET_CONFIGURE_ARGS) \
- ./configure $(QUIET) \
- --target=$(GNU_TARGET_NAME) \
- --host=$(REAL_GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=/usr \
- --exec-prefix=/usr \
- --bindir=/usr/bin \
- --sbindir=/usr/sbin \
- --libdir=/usr/lib \
- --libexecdir=/usr/lib \
- --sysconfdir=/etc \
- --datadir=/usr/share \
- --localstatedir=/var \
- --includedir=/usr/include \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --with-terminfo-dirs=/usr/share/terminfo \
- --with-default-terminfo-dir=/usr/share/terminfo \
- --with-shared --without-cxx --without-cxx-binding \
- --without-ada --without-progs --disable-big-core \
- $(DISABLE_NLS) $(DISABLE_LARGEFILE) \
- --without-profile --without-debug --disable-rpath \
- --enable-echo --enable-const --enable-overwrite \
- --enable-broken_linker \
- $(NCURSES_WANT_STATIC) \
- )
- touch $@
-$(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION): $(NCURSES_DIR)/.configured
- $(MAKE1) DESTDIR=$(STAGING_DIR) -C $(NCURSES_DIR) \
- libs panel menu form headers
+define NCURSES_BUILD_CMDS
+ $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR)
+endef
-$(STAGING_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION): $(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION)
- $(MAKE1) \
- prefix=$(STAGING_DIR)/usr/ \
- exec_prefix=$(STAGING_DIR) \
- bindir=$(STAGING_DIR)/bin \
- sbindir=$(STAGING_DIR)/sbin \
- libexecdir=$(STAGING_DIR)/usr/lib \
- datadir=$(STAGING_DIR)/usr/share \
- sysconfdir=$(STAGING_DIR)/etc \
- localstatedir=$(STAGING_DIR)/var \
- libdir=$(STAGING_DIR)/usr/lib \
- infodir=$(STAGING_DIR)/usr/info \
- mandir=$(STAGING_DIR)/usr/man \
- includedir=$(STAGING_DIR)/usr/include \
- gxx_include_dir=$(STAGING_DIR)/usr/include/c++ \
- ticdir=$(STAGING_DIR)/usr/share/terminfo \
- -C $(NCURSES_DIR) install
- chmod a-x $(NCURSES_DIR)/lib/libncurses.so*
+define NCURSES_PATCH_NCURSES_CONFIG
$(SED) 's^prefix="^prefix="$(STAGING_DIR)^' \
$(STAGING_DIR)/bin/ncurses5-config
- touch -c $@
+endef
+
+NCURSES_POST_BUILD_HOOKS += NCURSES_PATCH_NCURSES_CONFIG
+
+ifeq ($(BR2_HAVE_DEVFILES),y)
+define NCURSES_INSTALL_TARGET_DEVFILES
+ mkdir -p $(TARGET_DIR)/usr/include
+ cp -dpf $(NCURSES_DIR)/include/curses.h $(TARGET_DIR)/usr/include/curses.h
+ cp -dpf $(NCURSES_DIR)/include/ncurses_dll.h $(TARGET_DIR)/usr/include/ncurses_dll.h
+ cp -dpf $(NCURSES_DIR)/include/term.h $(TARGET_DIR)/usr/include/
+ cp -dpf $(NCURSES_DIR)/include/unctrl.h $(TARGET_DIR)/usr/include/
+ cp -dpf $(NCURSES_DIR)/include/termcap.h $(TARGET_DIR)/usr/include/
+ cp -dpf $(NCURSES_DIR)/lib/libncurses.a $(TARGET_DIR)/usr/lib/
+ (cd $(TARGET_DIR)/usr/lib; \
+ ln -fs libncurses.a libcurses.a; \
+ ln -fs libncurses.a libtermcap.a; \
+ )
+ (cd $(TARGET_DIR)/usr/include; ln -fs curses.h ncurses.h)
+ rm -f $(TARGET_DIR)/usr/lib/libncurses.so
+ (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.so.$(NCURSES_VERSION) libncurses.so)
+endef
+endif
-$(TARGET_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION): $(STAGING_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION)
- mkdir -p $(TARGET_DIR)/usr/lib
- cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/
ifeq ($(BR2_PACKAGE_NCURSES_TARGET_PANEL),y)
+define NCURSES_INSTALL_TARGET_PANEL
cp -dpf $(NCURSES_DIR)/lib/libpanel.so* $(TARGET_DIR)/usr/lib/
+endef
endif
+
ifeq ($(BR2_PACKAGE_NCURSES_TARGET_FORM),y)
+define NCURSES_INSTALL_TARGET_FORM
cp -dpf $(NCURSES_DIR)/lib/libform.so* $(TARGET_DIR)/usr/lib/
+endef
endif
+
ifeq ($(BR2_PACKAGE_NCURSES_TARGET_MENU),y)
+define NCURSES_INSTALL_TARGET_MENU
cp -dpf $(NCURSES_DIR)/lib/libmenu.so* $(TARGET_DIR)/usr/lib/
+endef
endif
+
+define NCURSES_INSTALL_TARGET_CMDS
+ mkdir -p $(TARGET_DIR)/usr/lib
+ cp -dpf $(NCURSES_DIR)/lib/libncurses.so* $(TARGET_DIR)/usr/lib/
+ $(NCURSES_INSTALL_TARGET_PANEL)
+ $(NCURSES_INSTALL_TARGET_FORM)
+ $(NCURSES_INSTALL_TARGET_MENU)
ln -snf /usr/share/terminfo $(TARGET_DIR)/usr/lib/terminfo
mkdir -p $(TARGET_DIR)/usr/share/terminfo/x
cp -dpf $(STAGING_DIR)/usr/share/terminfo/x/xterm $(TARGET_DIR)/usr/share/terminfo/x
@@ -130,51 +119,8 @@ endif
cp -dpf $(STAGING_DIR)/usr/share/terminfo/a/ansi $(TARGET_DIR)/usr/share/terminfo/a
mkdir -p $(TARGET_DIR)/usr/share/terminfo/l
cp -dpf $(STAGING_DIR)/usr/share/terminfo/l/linux $(TARGET_DIR)/usr/share/terminfo/l
- -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $@
- touch -c $@
+ -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libncurses.so*
+ $(NCURSES_INSTALL_TARGET_DEVFILES)
+endef # NCURSES_INSTALL_TARGET_CMDS
-$(NCURSES_DIR)/lib/libncurses.a: $(NCURSES_DIR)/lib/libncurses.so.$(NCURSES_VERSION)
-
-$(TARGET_DIR)/usr/lib/libncurses.a: $(NCURSES_DIR)/lib/libncurses.a
- mkdir -p $(TARGET_DIR)/usr/include
- cp -dpf $(NCURSES_DIR)/include/curses.h $(TARGET_DIR)/usr/include/curses.h
- cp -dpf $(NCURSES_DIR)/include/ncurses_dll.h $(TARGET_DIR)/usr/include/ncurses_dll.h
- cp -dpf $(NCURSES_DIR)/include/term.h $(TARGET_DIR)/usr/include/
- cp -dpf $(NCURSES_DIR)/include/unctrl.h $(TARGET_DIR)/usr/include/
- cp -dpf $(NCURSES_DIR)/include/termcap.h $(TARGET_DIR)/usr/include/
- cp -dpf $(NCURSES_DIR)/lib/libncurses.a $(TARGET_DIR)/usr/lib/
- (cd $(TARGET_DIR)/usr/lib; \
- ln -fs libncurses.a libcurses.a; \
- ln -fs libncurses.a libtermcap.a; \
- )
- (cd $(TARGET_DIR)/usr/include; ln -fs curses.h ncurses.h)
- rm -f $(TARGET_DIR)/usr/lib/libncurses.so
- (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.so.$(NCURSES_VERSION) libncurses.so)
- -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION)
- touch -c $@
-
-ncurses: $(TARGET_DIR)/usr/lib/libncurses.so.$(NCURSES_VERSION) \
- $(if $(BR2_HAVE_DEVFILES),$(TARGET_DIR)/usr/lib/libncurses.a)
-
-ncurses-unpacked: $(NCURSES_DIR)/.patched
-
-ncurses-source: $(DL_DIR)/$(NCURSES_SOURCE)
-
-ncurses-clean:
- rm -f $(STAGING_DIR)/usr/lib/libncurses.so* $(TARGET_DIR)/usr/lib/libncurses.so*
- rm -rf $(STAGING_DIR)/usr/share/tabset $(TARGET_DIR)/usr/share/tabset
- rm -rf $(STAGING_DIR)/usr/share/terminfo $(TARGET_DIR)/usr/share/terminfo
- rm -rf $(TARGET_DIR)/usr/lib/terminfo
- -$(MAKE) -C $(NCURSES_DIR) clean
-
-ncurses-dirclean:
- rm -rf $(NCURSES_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_NCURSES),y)
-TARGETS+=ncurses
-endif
+$(eval $(call AUTOTARGETS,package,ncurses))
--
1.7.0.4
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [Buildroot] [PATCH] ncurses: convert to autotools infrastructure
2010-05-02 22:46 ` [Buildroot] [PATCH] " llandwerlin at gmail.com
@ 2010-05-03 6:43 ` Peter Korsgaard
0 siblings, 0 replies; 8+ messages in thread
From: Peter Korsgaard @ 2010-05-03 6:43 UTC (permalink / raw)
To: buildroot
>>>>> "llandwerlin" == llandwerlin <llandwerlin@gmail.com> writes:
llandwerlin> From: Lionel Landwerlin <llandwerlin@gmail.com>
llandwerlin> Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
llandwerlin> ifneq ($(BR2_PACKAGE_NCURSES_TARGET_HEADERS),y)
llandwerlin> -NCURSES_WANT_STATIC=--disable-static
llandwerlin> +NCURSES_CONF_OPT += --disable-static
llandwerlin> endif
Not your fault, but I don't see the relation between headers (which
should use the global BR2_HAVE_DEVFILES instead?) and wanting to be able
to link statically?
Otherwise it looks good - Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-05-03 6:43 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-30 0:42 [Buildroot] [pull request] ncurses conversion + fix llandwerlin at gmail.com
2010-04-30 0:42 ` [Buildroot] [PATCH 1/2] ncurses: convert to autotools infrastructure llandwerlin at gmail.com
2010-05-01 11:06 ` Thomas Petazzoni
2010-05-01 13:46 ` Lionel Landwerlin
2010-05-02 22:46 ` [Buildroot] [PATCH] " llandwerlin at gmail.com
2010-05-03 6:43 ` Peter Korsgaard
2010-04-30 0:42 ` [Buildroot] [PATCH 2/2] ncurses: fix path to patch ncurses5-config llandwerlin at gmail.com
2010-05-01 11:07 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox