mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-08-19 07:23:41 +03:00
Based on a patch by Jonas Gorski git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26422 3c298f89-4303-0410-b956-a3cf2f4a3e73
154 lines
3.2 KiB
Diff
154 lines
3.2 KiB
Diff
--- a/squashfs-tools/mksquashfs.c
|
|
+++ b/squashfs-tools/mksquashfs.c
|
|
@@ -51,15 +51,22 @@
|
|
#include <sys/wait.h>
|
|
|
|
#ifndef linux
|
|
+#ifndef __CYGWIN__
|
|
#define __BYTE_ORDER BYTE_ORDER
|
|
#define __BIG_ENDIAN BIG_ENDIAN
|
|
#define __LITTLE_ENDIAN LITTLE_ENDIAN
|
|
#include <sys/sysctl.h>
|
|
+#endif /* __CYGWIN__ */
|
|
#else
|
|
#include <endian.h>
|
|
#include <sys/sysinfo.h>
|
|
#endif
|
|
|
|
+#ifdef __CYGWIN__
|
|
+#include <sys/termios.h>
|
|
+#define FNM_EXTMATCH (1 << 5)
|
|
+#endif
|
|
+
|
|
#ifndef FNM_EXTMATCH
|
|
#define FNM_EXTMATCH 0
|
|
#endif
|
|
@@ -844,6 +851,7 @@ void sigusr1_handler()
|
|
|
|
void sigwinch_handler()
|
|
{
|
|
+#ifndef __CYGWIN__
|
|
struct winsize winsize;
|
|
|
|
if(ioctl(1, TIOCGWINSZ, &winsize) == -1) {
|
|
@@ -853,6 +861,9 @@ void sigwinch_handler()
|
|
columns = 80;
|
|
} else
|
|
columns = winsize.ws_col;
|
|
+#else
|
|
+ columns = 80;
|
|
+#endif
|
|
}
|
|
|
|
|
|
@@ -4066,6 +4077,9 @@ void initialise_threads(int readb_mbytes
|
|
|
|
signal(SIGUSR1, sigusr1_handler);
|
|
|
|
+#ifdef __CYGWIN__
|
|
+ processors = atoi(getenv("NUMBER_OF_PROCESSORS"));
|
|
+#else
|
|
if(processors == -1) {
|
|
#ifndef linux
|
|
int mib[2];
|
|
@@ -4087,6 +4101,7 @@ void initialise_threads(int readb_mbytes
|
|
processors = sysconf(_SC_NPROCESSORS_ONLN);
|
|
#endif
|
|
}
|
|
+#endif /* __CYGWIN__ */
|
|
|
|
thread = malloc((2 + processors * 2) * sizeof(pthread_t));
|
|
if(thread == NULL)
|
|
--- a/squashfs-tools/read_fs.c
|
|
+++ b/squashfs-tools/read_fs.c
|
|
@@ -33,9 +33,11 @@
|
|
#include <sys/mman.h>
|
|
|
|
#ifndef linux
|
|
+#ifndef __CYGWIN__
|
|
#define __BYTE_ORDER BYTE_ORDER
|
|
#define __BIG_ENDIAN BIG_ENDIAN
|
|
#define __LITTLE_ENDIAN LITTLE_ENDIAN
|
|
+#endif
|
|
#else
|
|
#include <endian.h>
|
|
#endif
|
|
--- a/squashfs-tools/swap.c
|
|
+++ b/squashfs-tools/swap.c
|
|
@@ -20,9 +20,11 @@
|
|
*/
|
|
|
|
#ifndef linux
|
|
+#ifndef __CYGWIN__
|
|
#define __BYTE_ORDER BYTE_ORDER
|
|
#define __BIG_ENDIAN BIG_ENDIAN
|
|
#define __LITTLE_ENDIAN LITTLE_ENDIAN
|
|
+#endif
|
|
#else
|
|
#include <endian.h>
|
|
#endif
|
|
--- a/squashfs-tools/unsquashfs.c
|
|
+++ b/squashfs-tools/unsquashfs.c
|
|
@@ -117,6 +117,7 @@ void update_progress_bar();
|
|
|
|
void sigwinch_handler()
|
|
{
|
|
+#ifndef __CYGWIN__
|
|
struct winsize winsize;
|
|
|
|
if(ioctl(1, TIOCGWINSZ, &winsize) == -1) {
|
|
@@ -126,6 +127,9 @@ void sigwinch_handler()
|
|
columns = 80;
|
|
} else
|
|
columns = winsize.ws_col;
|
|
+#else
|
|
+ columns = 80;
|
|
+#endif
|
|
}
|
|
|
|
|
|
@@ -1807,7 +1811,9 @@ void initialise_threads(int fragment_buf
|
|
if(sigprocmask(SIG_BLOCK, &sigmask, &old_mask) == -1)
|
|
EXIT_UNSQUASH("Failed to set signal mask in intialise_threads"
|
|
"\n");
|
|
-
|
|
+#ifdef __CYGWIN__
|
|
+ processors = atoi(getenv("NUMBER_OF_PROCESSORS"));
|
|
+#else
|
|
if(processors == -1) {
|
|
#ifndef linux
|
|
int mib[2];
|
|
@@ -1829,6 +1835,7 @@ void initialise_threads(int fragment_buf
|
|
processors = sysconf(_SC_NPROCESSORS_ONLN);
|
|
#endif
|
|
}
|
|
+#endif /* __CYGWIN__ */
|
|
|
|
thread = malloc((3 + processors) * sizeof(pthread_t));
|
|
if(thread == NULL)
|
|
--- a/squashfs-tools/unsquashfs.h
|
|
+++ b/squashfs-tools/unsquashfs.h
|
|
@@ -46,15 +46,22 @@
|
|
#include <sys/time.h>
|
|
|
|
#ifndef linux
|
|
+#ifndef __CYGWIN__
|
|
#define __BYTE_ORDER BYTE_ORDER
|
|
#define __BIG_ENDIAN BIG_ENDIAN
|
|
#define __LITTLE_ENDIAN LITTLE_ENDIAN
|
|
#include <sys/sysctl.h>
|
|
+#endif
|
|
#else
|
|
#include <endian.h>
|
|
#include <sys/sysinfo.h>
|
|
#endif
|
|
|
|
+#ifdef __CYGWIN__
|
|
+#include <sys/termios.h>
|
|
+#define FNM_EXTMATCH (1 << 5)
|
|
+#endif
|
|
+
|
|
#ifndef FNM_EXTMATCH
|
|
#define FNM_EXTMATCH 0
|
|
#endif
|