* [Buildroot] [PATCH 1/3] ncurses: convert to autotools infrastructure
2010-01-03 18:51 [Buildroot] [PATCH 0/3] more conversions to new package infrastructure llandwerlin at gmail.com
@ 2010-01-03 18:51 ` llandwerlin at gmail.com
2010-01-03 18:51 ` [Buildroot] [PATCH 2/3] readline: " llandwerlin at gmail.com
2010-01-03 18:51 ` [Buildroot] [PATCH 3/3] lua: conversion to new package infrastructure llandwerlin at gmail.com
2 siblings, 0 replies; 4+ messages in thread
From: llandwerlin at gmail.com @ 2010-01-03 18:51 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, 65 insertions(+), 123 deletions(-)
diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk
index fb22c6c..a19e6c8 100644
--- a/package/ncurses/ncurses.mk
+++ b/package/ncurses/ncurses.mk
@@ -23,99 +23,84 @@
# 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_INSTALL_TARGET = 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 +115,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.6.5.7
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 2/3] readline: convert to autotools infrastructure
2010-01-03 18:51 [Buildroot] [PATCH 0/3] more conversions to new package infrastructure llandwerlin at gmail.com
2010-01-03 18:51 ` [Buildroot] [PATCH 1/3] ncurses: convert to autotools infrastructure llandwerlin at gmail.com
@ 2010-01-03 18:51 ` llandwerlin at gmail.com
2010-01-03 18:51 ` [Buildroot] [PATCH 3/3] lua: conversion to new package infrastructure llandwerlin at gmail.com
2 siblings, 0 replies; 4+ messages in thread
From: llandwerlin at gmail.com @ 2010-01-03 18:51 UTC (permalink / raw)
To: buildroot
From: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
---
package/readline/readline.mk | 107 ++++++++---------------------------------
1 files changed, 21 insertions(+), 86 deletions(-)
diff --git a/package/readline/readline.mk b/package/readline/readline.mk
index 34c02d8..641cd71 100644
--- a/package/readline/readline.mk
+++ b/package/readline/readline.mk
@@ -3,89 +3,24 @@
# build GNU readline
#
#############################################################
-READLINE_VERSION:=5.2
-READLINE_SITE:=$(BR2_GNU_MIRROR)/readline
-READLINE_SOURCE:=readline-$(READLINE_VERSION).tar.gz
-READLINE_DIR:=$(BUILD_DIR)/readline-$(READLINE_VERSION)
-READLINE_CAT:=$(ZCAT)
-READLINE_BINARY:=libhistory.a
-READLINE_SHARED_BINARY:=libhistory.so
-READLINE_TARGET_BINARY:=usr/lib/$(READLINE_BINARY)
-READLINE_TARGET_SHARED_BINARY:=usr/lib/$(READLINE_SHARED_BINARY)
-
-$(DL_DIR)/$(READLINE_SOURCE):
- $(call DOWNLOAD,$(READLINE_SITE),$(READLINE_SOURCE))
-
-readline-source: $(DL_DIR)/$(READLINE_SOURCE)
-
-$(READLINE_DIR)/.unpacked: $(DL_DIR)/$(READLINE_SOURCE)
- mkdir -p $(READLINE_DIR)
- tar -C $(BUILD_DIR) -zxf $(DL_DIR)/$(READLINE_SOURCE)
- toolchain/patch-kernel.sh $(READLINE_DIR) package/readline/ readline??-???
- $(CONFIG_UPDATE) $(READLINE_DIR)
- $(CONFIG_UPDATE) $(READLINE_DIR)/support
- touch $@
-
-$(READLINE_DIR)/.configured: $(READLINE_DIR)/.unpacked
- (cd $(READLINE_DIR); rm -rf config.cache; \
- bash_cv_func_sigsetjmp=yes \
- $(TARGET_CONFIGURE_OPTS) \
- $(TARGET_CONFIGURE_ARGS) \
- ./configure $(QUIET) \
- --target=$(GNU_TARGET_NAME) \
- --host=$(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 \
- --with-shared \
- --includedir=/usr/include \
- --mandir=/usr/man \
- --infodir=/usr/info \
- )
- touch $@
-
-$(READLINE_DIR)/$(READLINE_BINARY): $(READLINE_DIR)/.configured
- $(MAKE) -C $(READLINE_DIR) SHLIB_LIBS="-lncurses"
- ls $(READLINE_DIR)/$(READLINE_BINARY)
- touch -c $@
-
-$(STAGING_DIR)/$(READLINE_TARGET_BINARY): $(READLINE_DIR)/.configured
- $(MAKE) -C $(READLINE_DIR) install
- touch -c $@
-
-# Install to Staging area
-$(STAGING_DIR)/usr/include/readline/readline.h: $(READLINE_DIR)/$(READLINE_BINARY)
- BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" CC=$(TARGET_CC) \
- $(MAKE1) DESTDIR=$(STAGING_DIR) -C $(READLINE_DIR) install
- touch -c $@
-
-# Install to Target directory
-$(TARGET_DIR)/$(READLINE_TARGET_SHARED_BINARY): $(READLINE_DIR)/$(READLINE_BINARY)
- # make sure we don't end up with lib{readline,history}...old
- $(MAKE1) DESTDIR=$(TARGET_DIR) -C $(READLINE_DIR) uninstall
- BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" CC=$(TARGET_CC) \
- $(MAKE1) DESTDIR=$(TARGET_DIR) \
- -C $(READLINE_DIR) install-shared uninstall-doc
- chmod 775 $(TARGET_DIR)/usr/lib/libreadline.so.$(READLINE_VERSION) $(TARGET_DIR)/usr/lib/libhistory.so.$(READLINE_VERSION)
- $(STRIPCMD) $(TARGET_DIR)/usr/lib/libreadline.so.$(READLINE_VERSION) $(TARGET_DIR)/usr/lib/libhistory.so.$(READLINE_VERSION)
-
-readline: ncurses $(STAGING_DIR)/usr/include/readline/readline.h $(TARGET_DIR)/$(READLINE_TARGET_SHARED_BINARY)
-
-readline-clean:
- -$(MAKE) -C $(READLINE_DIR) DESTDIR=$(STAGING_DIR) uninstall
- -$(MAKE) -C $(READLINE_DIR) DESTDIR=$(TARGET_DIR) uninstall
- -$(MAKE) -C $(READLINE_DIR) clean
-
-readline-dirclean:
- rm -rf $(READLINE_DIR)
-
-ifeq ($(BR2_PACKAGE_READLINE),y)
-TARGETS+=readline
-endif
+READLINE_VERSION = 5.2
+READLINE_SOURCE = readline-$(READLINE_VERSION).tar.gz
+READLINE_SITE = $(BR2_GNU_MIRROR)/readline
+READLINE_INSTALL_STAGING = YES
+READLINE_INSTALL_TARGET = YES
+
+READLINE_DEPENDENCIES = ncurses
+
+READLINE_CONF_ENV = bash_cv_func_sigsetjmp=yes
+
+define READLINE_INSTALL_TARGET_CMDS
+ $(MAKE1) DESTDIR=$(TARGET_DIR) -C $(@D) uninstall
+ $(MAKE1) DESTDIR=$(TARGET_DIR) -C $(@D) install-shared uninstall-doc
+ chmod 775 $(TARGET_DIR)/usr/lib/libreadline.so.$(READLINE_VERSION) \
+ $(TARGET_DIR)/usr/lib/libhistory.so.$(READLINE_VERSION)
+ $(STRIPCMD) $(STRIP_STRIP_UNNEEDED) \
+ $(TARGET_DIR)/usr/lib/libreadline.so.$(READLINE_VERSION) \
+ $(TARGET_DIR)/usr/lib/libhistory.so.$(READLINE_VERSION)
+endef
+
+$(eval $(call AUTOTARGETS,package,readline))
--
1.6.5.7
^ permalink raw reply related [flat|nested] 4+ messages in thread* [Buildroot] [PATCH 3/3] lua: conversion to new package infrastructure
2010-01-03 18:51 [Buildroot] [PATCH 0/3] more conversions to new package infrastructure llandwerlin at gmail.com
2010-01-03 18:51 ` [Buildroot] [PATCH 1/3] ncurses: convert to autotools infrastructure llandwerlin at gmail.com
2010-01-03 18:51 ` [Buildroot] [PATCH 2/3] readline: " llandwerlin at gmail.com
@ 2010-01-03 18:51 ` llandwerlin at gmail.com
2 siblings, 0 replies; 4+ messages in thread
From: llandwerlin at gmail.com @ 2010-01-03 18:51 UTC (permalink / raw)
To: buildroot
From: Lionel Landwerlin <llandwerlin@gmail.com>
Also install development files to staging by default and to target if
requested.
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
---
package/lua/lua.mk | 124 +++++++++++++++++++++++++--------------------------
1 files changed, 61 insertions(+), 63 deletions(-)
diff --git a/package/lua/lua.mk b/package/lua/lua.mk
index aeb6c82..9cb1675 100644
--- a/package/lua/lua.mk
+++ b/package/lua/lua.mk
@@ -5,77 +5,75 @@
#############################################################
LUA_VERSION=5.1.4
-
LUA_SOURCE=lua-$(LUA_VERSION).tar.gz
-LUA_CAT:=$(ZCAT)
LUA_SITE=http://www.lua.org/ftp
+LUA_INSTALL_STAGING=YES
+LUA_DEPENDENCIES = readline ncurses
-LUA_DIR=$(BUILD_DIR)/lua-$(LUA_VERSION)
-
+#
LUA_CFLAGS=-DLUA_USE_LINUX
LUA_MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses"
-$(DL_DIR)/$(LUA_SOURCE):
- $(call DOWNLOAD,$(LUA_SITE),$(LUA_SOURCE))
-
-$(LUA_DIR)/.unpacked: $(DL_DIR)/$(LUA_SOURCE)
- $(LUA_CAT) $(DL_DIR)/$(LUA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
- touch $(LUA_DIR)/.unpacked
-
-$(LUA_DIR)/src/lua: $(LUA_DIR)/.unpacked
- rm -f $@
+define LUA_BUILD_CMDS
$(MAKE) $(TARGET_CONFIGURE_OPTS) \
MYCFLAGS=$(LUA_CFLAGS) \
MYLIBS=$(LUA_MYLIBS) \
AR="$(TARGET_CROSS)ar rcu" \
- -C $(LUA_DIR)/src all
-
-$(LUA_DIR)/src/luac: $(LUA_DIR)/src/lua
-
-$(LUA_DIR)/src/liblua.a: $(LUA_DIR)/src/lua
-
-$(STAGING_DIR)/usr/lib/liblua.a: $(LUA_DIR)/src/liblua.a
- cp -dpf $(LUA_DIR)/src/liblua.a $(STAGING_DIR)/usr/lib/liblua.a
-
-$(STAGING_DIR)/usr/bin/lua: $(LUA_DIR)/src/lua
- cp -dpf $(LUA_DIR)/src/lua $(STAGING_DIR)/usr/bin/lua
-
-$(STAGING_DIR)/usr/bin/luac: $(LUA_DIR)/src/luac
- cp -dpf $(LUA_DIR)/src/luac $(STAGING_DIR)/usr/bin/luac
-
-$(TARGET_DIR)/usr/lib/liblua.a: $(STAGING_DIR)/usr/lib/liblua.a
- cp -dpf $(STAGING_DIR)/usr/lib/liblua.a $(TARGET_DIR)/usr/lib/liblua.a
-
-$(TARGET_DIR)/usr/bin/lua: $(STAGING_DIR)/usr/bin/lua
- cp -dpf $(STAGING_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/lua
-
-$(TARGET_DIR)/usr/bin/luac: $(STAGING_DIR)/usr/bin/luac
- cp -dpf $(STAGING_DIR)/usr/bin/luac $(TARGET_DIR)/usr/bin/luac
-
-
-lua-bins: $(TARGET_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/luac
-
-lua-libs: $(if $(BR2_HAVE_DEVFILES),$(TARGET_DIR)/usr/lib/liblua.a)
-
-lua: readline ncurses lua-bins lua-libs
-
-lua-source: $(DL_DIR)/$(LUA_SOURCE)
-
-lua-clean:
- rm -f $(STAGING_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/luac
- rm -f $(STAGING_DIR)/usr/lib/liblua.a
- rm -f $(TARGET_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/luac
- rm -f $(TARGET_DIR)/usr/lib/liblua.a
- -$(MAKE) -C $(LUA_DIR) clean
-
-lua-dirclean:
- rm -rf $(LUA_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_LUA),y)
-TARGETS+=lua
+ -C $(@D)/src all
+endef
+
+define LUA_INSTALL_STAGING_CMDS
+ cat $(@D)/etc/lua.pc | sed -e s/\\/usr\\/local/\\/usr/ > $(STAGING_DIR)/usr/lib/pkgconfig/lua.pc
+ $(INSTALL) $(@D)/src/liblua.a $(STAGING_DIR)/usr/lib
+ $(INSTALL) $(@D)/src/lua $(STAGING_DIR)/usr/bin
+ $(INSTALL) $(@D)/src/luac $(STAGING_DIR)/usr/bin
+ $(INSTALL) $(@D)/src/lua.h $(STAGING_DIR)/usr/include
+ $(INSTALL) $(@D)/src/luaconf.h $(STAGING_DIR)/usr/include
+ $(INSTALL) $(@D)/src/lualib.h $(STAGING_DIR)/usr/include
+ $(INSTALL) $(@D)/src/lauxlib.h $(STAGING_DIR)/usr/include
+endef
+
+ifeq ($(BR2_HAVE_DEVFILES),y)
+define LUA_INSTALL_TARGET_HEADERS
+ install -D $(STAGING_DIR)/usr/lib/pkgconfig/lua.pc $(TARGET_DIR)/usr/lib/pkgconfig/lua.pc
+ $(INSTALL) $(@D)/src/lua.h $(TARGET_DIR)/usr/include
+ $(INSTALL) $(@D)/src/luaconf.h $(TARGET_DIR)/usr/include
+ $(INSTALL) $(@D)/src/lualib.h $(TARGET_DIR)/usr/include
+ $(INSTALL) $(@D)/src/lauxlib.h $(TARGET_DIR)/usr/include
+endef
endif
+
+define LUA_INSTALL_TARGET_CMDS
+ $(INSTALL) $(@D)/src/lua $(STAGING_DIR)/usr/bin
+ $(INSTALL) $(@D)/src/luac $(STAGING_DIR)/usr/bin
+ $(INSTALL) -D $(@D)/src/liblua.a $(STAGING_DIR)/usr/lib/liblua.a
+ $(LUA_INSTALL_TARGET_HEADERS)
+endef
+
+LUA_INSTALLED_FILES = \
+ /usr/include/lua.h \
+ /usr/include/luaconf.h \
+ /usr/include/lualib.h \
+ /usr/include/lauxlib.h \
+ /usr/lib/pkgconfig/lua.pc \
+ /usr/bin/lua \
+ /usr/bin/luac \
+ /usr/lib/liblua.a
+
+define LUA_UNINSTALL_STAGING_CMDS
+ for i in $(LUA_INSTALLED_FILES); do \
+ rm -f $(STAGING_DIR)$$i; \
+ done
+endef
+
+define LUA_UNINSTALL_TARGET_CMDS
+ for i in $(LUA_INSTALLED_FILES); do \
+ rm -f $(TARGET_DIR)$$i; \
+ done
+endef
+
+define LUA_CLEAN_CMDS
+ -$(MAKE) $(@D) clean
+endef
+
+$(eval $(call GENTARGETS,package,lua))
--
1.6.5.7
^ permalink raw reply related [flat|nested] 4+ messages in thread