aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/squashfs.rb
blob: 76a20a3b750ea5f71f7883d3811b2a365e897fb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
require 'formula'

class Squashfs < Formula
  homepage 'http://squashfs.sourceforge.net/'
  url 'http://sourceforge.net/projects/squashfs/files/squashfs/squashfs4.2/squashfs4.2.tar.gz'
  sha256 'd9e0195aa922dbb665ed322b9aaa96e04a476ee650f39bbeadb0d00b24022e96'

  depends_on 'lzo'
  depends_on 'xz'

  fails_with :clang do
    build 318
  end

  # The instructions for this software say to do this on OS X
  def patches
    { :p0 => DATA }
  end

  def install
    cd 'squashfs-tools' do
      system "make XATTR_SUPPORT=0 EXTRA_CFLAGS=-std=gnu89 LZO_SUPPORT=1 LZO_DIR='#{HOMEBREW_PREFIX}' XZ_SUPPORT=1 XZ_DIR='#{HOMEBREW_PREFIX}'"
      bin.install %w{mksquashfs unsquashfs}
    end
    doc.install %w{ACKNOWLEDGEMENTS CHANGES COPYING INSTALL OLD-READMEs PERFORMANCE.README README README-4.2}
  end
end

__END__

Originally from some internal notes:
  "cd squashfs-tools; sed -i.orig 's/\|FNM_EXTMATCH//' $(grep -l FNM_EXTMATCH *)"
  "cd squashfs-tools; sed -i.orig $'/#include \"unsquashfs.h\"/{i\\\n#include <sys/sysctl.h>\n}' unsquashfs.c"

diff -u squashfs-tools.orig/mksquashfs.c squashfs-tools/mksquashfs.c
--- squashfs-tools.orig/mksquashfs.c	2009-04-05 14:22:48.000000000 -0700
+++ squashfs-tools/mksquashfs.c	2011-11-17 17:51:31.000000000 -0800
@@ -3975,7 +3975,7 @@
 				regexec(path->name[i].preg, name, (size_t) 0,
 					NULL, 0) == 0 :
 				fnmatch(path->name[i].name, name,
-					FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) ==
+					FNM_PATHNAME|FNM_PERIOD) ==
 					 0;
 
 			if(match && path->name[i].paths == NULL) {
Only in squashfs-tools: mksquashfs.c.orig
diff -u squashfs-tools.orig/unsquashfs.c squashfs-tools/unsquashfs.c
--- squashfs-tools.orig/unsquashfs.c	2009-04-05 14:23:06.000000000 -0700
+++ squashfs-tools/unsquashfs.c	2011-11-17 17:51:44.000000000 -0800
@@ -29,7 +29,7 @@
 #include "compressor.h"
 #include "xattr.h"
 
-#include <sys/sysinfo.h>
+#include <sys/sysctl.h>
 #include <sys/types.h>
 
 struct cache *fragment_cache, *data_cache;
@@ -1195,7 +1196,7 @@
 			int match = use_regex ?
 				regexec(path->name[i].preg, name, (size_t) 0,
 				NULL, 0) == 0 : fnmatch(path->name[i].name,
-				name, FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) ==
+				name, FNM_PATHNAME|FNM_PERIOD) ==
 				0;
 			if(match && path->name[i].paths == NULL)
 				/*