summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2009-12-29 18:41:30 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2009-12-29 18:41:30 +0100
commit9036ad7c2fa2829855aff75b83d86818a978a242 (patch)
treed0f2be6610dc2213e041ed5a90de6e5cd2791000 /target
parent05a3ed5d87bd71009cf90170347d8e692e2b6c9e (diff)
move squashfs host tools to common tools dir
fix bsd compile errors.
Diffstat (limited to 'target')
-rw-r--r--target/ag241/Makefile2
-rw-r--r--target/ag241/tools/squashfs/Makefile27
-rw-r--r--target/foxboard/Makefile4
-rw-r--r--target/tools/rules.mk7
-rw-r--r--target/tools/squashfs/Makefile (renamed from target/foxboard/tools/squashfs/Makefile)0
-rw-r--r--target/tools/squashfs/patches/squashfs-bsd.patch132
6 files changed, 142 insertions, 30 deletions
diff --git a/target/ag241/Makefile b/target/ag241/Makefile
index e87a55d0d..9848205cc 100644
--- a/target/ag241/Makefile
+++ b/target/ag241/Makefile
@@ -15,7 +15,7 @@ $(TOOLS_BUILD_DIR):
tools-compile: $(TOOLS_BUILD_DIR)
$(MAKE) -C tools/addpattern
$(MAKE) -C tools/srec2bin
- $(MAKE) -C tools/squashfs prepare compile install
+ $(MAKE) -C ../tools/squashfs prepare compile install
kernel-install: tools-compile
PATH='${TARGET_PATH}' \
diff --git a/target/ag241/tools/squashfs/Makefile b/target/ag241/tools/squashfs/Makefile
deleted file mode 100644
index 0887afc22..000000000
--- a/target/ag241/tools/squashfs/Makefile
+++ /dev/null
@@ -1,27 +0,0 @@
-# $Id$
-#-
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:= squashfs
-PKG_VERSION:= 4.0
-PKG_RELEASE:= 1
-PKG_MD5SUM:= a3c23391da4ebab0ac4a75021ddabf96
-PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=squashfs/}
-DISTFILES:= ${PKG_NAME}${PKG_VERSION}.tar.gz
-WRKDIST= ${WRKDIR}/$(PKG_NAME)${PKG_VERSION}
-
-include ../rules.mk
-
-$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared
- $(MAKE) -C $(WRKBUILD)/squashfs-tools
- touch $@
-
-$(WRKBUILD)/.installed:
- $(INSTALL_BIN) $(WRKBUILD)/squashfs-tools/mksquashfs \
- ${STAGING_TOOLS}/bin
- touch $@
-
-include $(TOPDIR)/mk/tools.mk
diff --git a/target/foxboard/Makefile b/target/foxboard/Makefile
index f33dc813a..c4a64c26b 100644
--- a/target/foxboard/Makefile
+++ b/target/foxboard/Makefile
@@ -12,8 +12,8 @@ $(TOOLS_BUILD_DIR):
tools-compile: $(TOOLS_BUILD_DIR)
$(MAKE) -C tools/mkfimage
- $(MAKE) -C tools/e100boot prepare compile install $(MAKE_TRACE)
- $(MAKE) -C tools/squashfs prepare compile install
+ #$(MAKE) -C tools/e100boot prepare compile install $(MAKE_TRACE)
+ $(MAKE) -C ../tools/squashfs prepare compile install
$(INSTALL_BIN) tools/boot_linux $(BIN_DIR)/
kernel-install: tools-compile
diff --git a/target/tools/rules.mk b/target/tools/rules.mk
new file mode 100644
index 000000000..a6a3684ac
--- /dev/null
+++ b/target/tools/rules.mk
@@ -0,0 +1,7 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+WRKDIR_BASE= ${TOOLS_BUILD_DIR}
+WRKDIR= ${WRKDIR_BASE}
+
+include ${TOPDIR}/mk/buildhlp.mk
diff --git a/target/foxboard/tools/squashfs/Makefile b/target/tools/squashfs/Makefile
index a55181f88..a55181f88 100644
--- a/target/foxboard/tools/squashfs/Makefile
+++ b/target/tools/squashfs/Makefile
diff --git a/target/tools/squashfs/patches/squashfs-bsd.patch b/target/tools/squashfs/patches/squashfs-bsd.patch
new file mode 100644
index 000000000..6e23ed8d6
--- /dev/null
+++ b/target/tools/squashfs/patches/squashfs-bsd.patch
@@ -0,0 +1,132 @@
+diff -Nur squashfs4.0.orig/squashfs-tools/mksquashfs.c squashfs4.0/squashfs-tools/mksquashfs.c
+--- squashfs4.0.orig/squashfs-tools/mksquashfs.c Sun Apr 5 23:22:48 2009
++++ squashfs4.0/squashfs-tools/mksquashfs.c Tue Dec 29 18:23:15 2009
+@@ -48,16 +48,9 @@
+ #include <regex.h>
+ #include <fnmatch.h>
+
+-#ifndef linux
+-#define __BYTE_ORDER BYTE_ORDER
+-#define __BIG_ENDIAN BIG_ENDIAN
+-#define __LITTLE_ENDIAN LITTLE_ENDIAN
+-#include <sys/sysctl.h>
+-#else
+-#include <endian.h>
+-#include <sys/sysinfo.h>
+-#endif
++#include <sys/param.h>
+
++
+ #include "squashfs_fs.h"
+ #include "squashfs_swap.h"
+ #include "mksquashfs.h"
+@@ -3688,23 +3681,9 @@
+ signal(SIGUSR1, sigusr1_handler);
+
+ if(processors == -1) {
+-#ifndef linux
+- int mib[2];
+- size_t len = sizeof(processors);
+-
+- mib[0] = CTL_HW;
+-#ifdef HW_AVAILCPU
+- mib[1] = HW_AVAILCPU;
++#if defined(BSD)
++ processors = 1;
+ #else
+- mib[1] = HW_NCPU;
+-#endif
+-
+- if(sysctl(mib, 2, &processors, &len, NULL, 0) == -1) {
+- ERROR("Failed to get number of available processors. "
+- "Defaulting to 1\n");
+- processors = 1;
+- }
+-#else
+ processors = get_nprocs();
+ #endif
+ }
+@@ -3974,9 +3953,15 @@
+ int match = use_regex ?
+ regexec(path->name[i].preg, name, (size_t) 0,
+ NULL, 0) == 0 :
++#if defined(BSD)
+ fnmatch(path->name[i].name, name,
++ FNM_PATHNAME|FNM_PERIOD) ==
++ 0;
++#else
++ fnmatch(path->name[i].name, name,
+ FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) ==
+ 0;
++#endif
+
+ if(match && path->name[i].paths == NULL) {
+ /* match on a leaf component, any subdirectories
+diff -Nur squashfs4.0.orig/squashfs-tools/pseudo.c squashfs4.0/squashfs-tools/pseudo.c
+--- squashfs4.0.orig/squashfs-tools/pseudo.c Sun Apr 5 04:01:58 2009
++++ squashfs4.0/squashfs-tools/pseudo.c Tue Dec 29 18:07:33 2009
+@@ -30,6 +30,11 @@
+ #include <string.h>
+ #include <stdlib.h>
+ #include <sys/types.h>
++#include <sys/param.h>
++
++#if defined(BSD)
++#include <sys/stat.h>
++#endif
+
+ #include "pseudo.h"
+
+diff -Nur squashfs4.0.orig/squashfs-tools/unsquashfs.c squashfs4.0/squashfs-tools/unsquashfs.c
+--- squashfs4.0.orig/squashfs-tools/unsquashfs.c Sun Apr 5 23:23:06 2009
++++ squashfs4.0/squashfs-tools/unsquashfs.c Tue Dec 29 18:25:56 2009
+@@ -21,6 +21,8 @@
+ * unsquashfs.c
+ */
+
++#include <sys/param.h>
++
+ #include "unsquashfs.h"
+ #include "squashfs_swap.h"
+ #include "squashfs_compat.h"
+@@ -1193,10 +1195,17 @@
+ struct pathname *path = paths->path[n];
+ for(i = 0; i < path->names; i++) {
+ int match = use_regex ?
++#if defined(BSD)
+ regexec(path->name[i].preg, name, (size_t) 0,
+ NULL, 0) == 0 : fnmatch(path->name[i].name,
++ name, FNM_PATHNAME|FNM_PERIOD) ==
++ 0;
++#else
++ regexec(path->name[i].preg, name, (size_t) 0,
++ NULL, 0) == 0 : fnmatch(path->name[i].name,
+ name, FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) ==
+ 0;
++#endif
+ if(match && path->name[i].paths == NULL)
+ /*
+ * match on a leaf component, any subdirectories
+@@ -1795,21 +1804,7 @@
+
+ if(processors == -1) {
+ #ifndef linux
+- int mib[2];
+- size_t len = sizeof(processors);
+-
+- mib[0] = CTL_HW;
+-#ifdef HW_AVAILCPU
+- mib[1] = HW_AVAILCPU;
+-#else
+- mib[1] = HW_NCPU;
+-#endif
+-
+- if(sysctl(mib, 2, &processors, &len, NULL, 0) == -1) {
+- ERROR("Failed to get number of available processors. "
+- "Defaulting to 1\n");
+- processors = 1;
+- }
++ processors = 1;
+ #else
+ processors = get_nprocs();
+ #endif