diff options
author | Felix Fietkau <nbd@openwrt.org> | 2007-12-24 23:02:02 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2007-12-24 23:02:02 +0000 |
commit | d0074af438883b0fae050ad6a6c76effeb3e4715 (patch) | |
tree | 3cab185acf601643e8a38be20d6e0749600a19a5 /tools/genext2fs | |
parent | 42f612a5cbb36fcc36b2b852333efaa90c83b5a4 (diff) | |
download | upstream-d0074af438883b0fae050ad6a6c76effeb3e4715.tar.gz upstream-d0074af438883b0fae050ad6a6c76effeb3e4715.tar.bz2 upstream-d0074af438883b0fae050ad6a6c76effeb3e4715.zip |
rename tools/ext2fs to tools/genext2fs
SVN-Revision: 9899
Diffstat (limited to 'tools/genext2fs')
-rw-r--r-- | tools/genext2fs/Makefile | 56 | ||||
-rw-r--r-- | tools/genext2fs/patches/01-remove_getline.patch | 52 |
2 files changed, 108 insertions, 0 deletions
diff --git a/tools/genext2fs/Makefile b/tools/genext2fs/Makefile new file mode 100644 index 0000000000..69700ed54b --- /dev/null +++ b/tools/genext2fs/Makefile @@ -0,0 +1,56 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME:=genext2fs +PKG_VERSION:=1.4rc1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@SF/$(PKG_NAME) +PKG_MD5SUM:=664431bf6737df1c265500e1f0b5d40c +PKG_CAT:=zcat + +include $(INCLUDE_DIR)/host-build.mk + +define Build/Configure + ( cd $(PKG_BUILD_DIR); \ + ./configure \ + --target=$(GNU_HOST_NAME) \ + --host=$(GNU_HOST_NAME) \ + --build=$(GNU_HOST_NAME) \ + --program-prefix="" \ + --program-suffix="" \ + --prefix=/usr \ + --exec-prefix=/usr \ + --bindir=/usr/bin \ + --sbindir=/usr/sbin \ + --libexecdir=/usr/lib \ + --sysconfdir=/etc \ + --datadir=/usr/share \ + --localstatedir=/var \ + --mandir=/usr/man \ + --infodir=/usr/info \ + ) +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + CFLAGS="$(HOST_CFLAGS) -include getline.h" \ + all +endef + +define Build/Install + install -m0755 $(PKG_BUILD_DIR)/genext2fs $(STAGING_DIR_HOST)/bin/ +endef + +define Build/Clean + rm -f $(STAGING_DIR_HOST)/bin/genext2fs +endef + +$(eval $(call HostBuild)) diff --git a/tools/genext2fs/patches/01-remove_getline.patch b/tools/genext2fs/patches/01-remove_getline.patch new file mode 100644 index 0000000000..d09404c0c5 --- /dev/null +++ b/tools/genext2fs/patches/01-remove_getline.patch @@ -0,0 +1,52 @@ +diff -urN genext2fs-1.4rc1/genext2fs.c genext2fs-1.4rc1.new/genext2fs.c +--- genext2fs-1.4rc1/genext2fs.c 2005-05-17 18:29:10.000000000 +0200 ++++ genext2fs-1.4rc1.new/genext2fs.c 2007-01-03 15:21:16.000000000 +0100 +@@ -243,48 +243,6 @@ + } + #endif // defined SNPRINTF_STORAGE_CLASS + +-#if defined(__APPLE__) && defined(__GNUC__) +-// getline() replacement for Darwin, might work on other systems +-// written according to the getline man page included with Debian Linux +-ssize_t +-getline(char **lineptr, size_t *n, FILE *stream) +-{ +- char *buf = *lineptr; // could be NULL, in which case we allocate +- size_t bufsize = *n; // current buffer size, adjust if we (re)alloc +- +- char *temp = NULL; +- size_t tempsize = 0; +- +- // temp is not a C string and we don't own the buffer it points into +- // must copy into a malloced buffer and NULL terminate +- temp = fgetln(stream, &tempsize); +- if(!temp) return -1; +- +- tempsize++; // adjust for NULL terminator +- if(buf) { +- // check if we have to reallocate +- if(bufsize < tempsize) { +- bufsize = tempsize; +- buf = (char*)realloc(buf, tempsize); +- if(!buf) return -1; +- } +- } else { +- bufsize = tempsize; +- buf = (char*)malloc(bufsize); +- if(!buf) return -1; +- } +- +- memcpy(buf, temp, tempsize-1); +- buf[tempsize-1] = '\0'; +- +- // give new pointer and size back, nondestructive if we didn't change anything.. +- *n = bufsize; +- *lineptr = buf; +- +- return (ssize_t)(tempsize-1); // don't include the NULL terminator, per getline man page +-} +-#endif +- + // Convert a numerical string to a float, and multiply the result by an + // SI-style multiplier if provided; supported multipliers are Ki, Mi, Gi, k, M + // and G. |