nutcracker 0.3.0.12 → 0.4.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. checksums.yaml +5 -13
  2. data/README.md +3 -3
  3. data/Rakefile +12 -10
  4. data/ext/nutcracker/Makefile.in +215 -162
  5. data/ext/nutcracker/README.md +16 -4
  6. data/ext/nutcracker/aclocal.m4 +432 -254
  7. data/ext/nutcracker/{contrib/yaml-0.1.4/configure → autom4te.cache/output.0} +11367 -4545
  8. data/ext/nutcracker/autom4te.cache/output.1 +19907 -0
  9. data/ext/nutcracker/autom4te.cache/output.2 +19907 -0
  10. data/ext/nutcracker/autom4te.cache/requests +518 -0
  11. data/ext/nutcracker/autom4te.cache/traces.0 +2715 -0
  12. data/ext/nutcracker/autom4te.cache/traces.1 +967 -0
  13. data/ext/nutcracker/autom4te.cache/traces.2 +2715 -0
  14. data/ext/nutcracker/config/compile +347 -0
  15. data/ext/nutcracker/config/config.guess +116 -78
  16. data/ext/nutcracker/config/config.sub +65 -45
  17. data/ext/nutcracker/config/depcomp +295 -192
  18. data/ext/nutcracker/config/install-sh +7 -7
  19. data/ext/nutcracker/config/ltmain.sh +15 -20
  20. data/ext/nutcracker/config/missing +149 -265
  21. data/ext/nutcracker/configure +493 -367
  22. data/ext/nutcracker/contrib/Makefile.in +158 -116
  23. data/ext/nutcracker/extconf.rb +0 -1
  24. data/ext/nutcracker/m4/libtool.m4 +4 -23
  25. data/ext/nutcracker/m4/ltoptions.m4 +0 -0
  26. data/ext/nutcracker/m4/ltsugar.m4 +0 -0
  27. data/ext/nutcracker/m4/ltversion.m4 +0 -0
  28. data/ext/nutcracker/m4/lt~obsolete.m4 +0 -0
  29. data/ext/nutcracker/notes/recommendation.md +1 -1
  30. data/ext/nutcracker/notes/redis.md +35 -3
  31. data/ext/nutcracker/scripts/benchmark-mget.py +43 -0
  32. data/ext/nutcracker/scripts/nutcracker.spec +61 -3
  33. data/ext/nutcracker/scripts/redis-check.sh +43 -0
  34. data/ext/nutcracker/src/Makefile.in +205 -142
  35. data/ext/nutcracker/src/event/Makefile.in +164 -66
  36. data/ext/nutcracker/src/hashkit/Makefile.in +164 -66
  37. data/ext/nutcracker/src/nc_conf.c +2 -0
  38. data/ext/nutcracker/src/nc_connection.c +31 -0
  39. data/ext/nutcracker/src/nc_connection.h +3 -0
  40. data/ext/nutcracker/src/nc_core.c +38 -2
  41. data/ext/nutcracker/src/nc_core.h +11 -0
  42. data/ext/nutcracker/src/nc_log.c +90 -12
  43. data/ext/nutcracker/src/nc_log.h +11 -0
  44. data/ext/nutcracker/src/nc_mbuf.h +1 -1
  45. data/ext/nutcracker/src/nc_message.c +162 -116
  46. data/ext/nutcracker/src/nc_message.h +161 -129
  47. data/ext/nutcracker/src/nc_proxy.c +34 -4
  48. data/ext/nutcracker/src/nc_request.c +158 -32
  49. data/ext/nutcracker/src/nc_server.c +59 -5
  50. data/ext/nutcracker/src/nc_server.h +1 -0
  51. data/ext/nutcracker/src/nc_signal.c +2 -2
  52. data/ext/nutcracker/src/nc_stats.c +21 -0
  53. data/ext/nutcracker/src/nc_stats.h +28 -26
  54. data/ext/nutcracker/src/nc_string.c +176 -1
  55. data/ext/nutcracker/src/nc_string.h +26 -0
  56. data/ext/nutcracker/src/nc_util.c +12 -0
  57. data/ext/nutcracker/src/nc_util.h +1 -0
  58. data/ext/nutcracker/src/proto/Makefile.in +164 -66
  59. data/ext/nutcracker/src/proto/nc_memcache.c +279 -88
  60. data/ext/nutcracker/src/proto/nc_proto.h +3 -4
  61. data/ext/nutcracker/src/proto/nc_redis.c +561 -134
  62. data/lib/nutcracker/version.rb +1 -1
  63. metadata +31 -67
  64. data/ext/nutcracker/contrib/yaml-0.1.4/LICENSE +0 -19
  65. data/ext/nutcracker/contrib/yaml-0.1.4/Makefile.am +0 -20
  66. data/ext/nutcracker/contrib/yaml-0.1.4/Makefile.in +0 -736
  67. data/ext/nutcracker/contrib/yaml-0.1.4/README +0 -27
  68. data/ext/nutcracker/contrib/yaml-0.1.4/aclocal.m4 +0 -956
  69. data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in +0 -80
  70. data/ext/nutcracker/contrib/yaml-0.1.4/config/config.guess +0 -1561
  71. data/ext/nutcracker/contrib/yaml-0.1.4/config/config.sub +0 -1686
  72. data/ext/nutcracker/contrib/yaml-0.1.4/config/depcomp +0 -630
  73. data/ext/nutcracker/contrib/yaml-0.1.4/config/install-sh +0 -520
  74. data/ext/nutcracker/contrib/yaml-0.1.4/config/ltmain.sh +0 -8406
  75. data/ext/nutcracker/contrib/yaml-0.1.4/config/missing +0 -376
  76. data/ext/nutcracker/contrib/yaml-0.1.4/configure.ac +0 -75
  77. data/ext/nutcracker/contrib/yaml-0.1.4/doc/doxygen.cfg +0 -222
  78. data/ext/nutcracker/contrib/yaml-0.1.4/include/yaml.h +0 -1971
  79. data/ext/nutcracker/contrib/yaml-0.1.4/m4/libtool.m4 +0 -7357
  80. data/ext/nutcracker/contrib/yaml-0.1.4/m4/ltoptions.m4 +0 -368
  81. data/ext/nutcracker/contrib/yaml-0.1.4/m4/ltsugar.m4 +0 -123
  82. data/ext/nutcracker/contrib/yaml-0.1.4/m4/ltversion.m4 +0 -23
  83. data/ext/nutcracker/contrib/yaml-0.1.4/m4/lt~obsolete.m4 +0 -92
  84. data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile.am +0 -4
  85. data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile.in +0 -484
  86. data/ext/nutcracker/contrib/yaml-0.1.4/src/api.c +0 -1392
  87. data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.c +0 -394
  88. data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.c +0 -2329
  89. data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.c +0 -432
  90. data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.c +0 -1374
  91. data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.c +0 -465
  92. data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.c +0 -3570
  93. data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.c +0 -141
  94. data/ext/nutcracker/contrib/yaml-0.1.4/src/yaml_private.h +0 -640
  95. data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile.am +0 -8
  96. data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile.in +0 -675
  97. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.c +0 -800
  98. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.c +0 -1130
  99. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.c +0 -217
  100. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.c +0 -202
  101. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.c +0 -311
  102. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.c +0 -327
  103. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.c +0 -63
  104. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.c +0 -63
  105. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.c +0 -63
  106. data/ext/nutcracker/contrib/yaml-0.1.4/tests/test-reader.c +0 -354
  107. data/ext/nutcracker/contrib/yaml-0.1.4/tests/test-version.c +0 -29
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZTlkN2UzMGQyY2ZlYzFhNGViMWIwMDgwNjJjNDUwMzc3NjI2NTI4Mw==
5
- data.tar.gz: !binary |-
6
- ODAyMDQ4MDdmYWI1NWRhYjc5YTIxOGYyZjA0NzRmMzBhMzZmODc1NA==
2
+ SHA1:
3
+ metadata.gz: 20777a4582dfda89cf7b0891cb2def88fb225b28
4
+ data.tar.gz: e09ecd1c043fd811f05113d9dadd6bc5bdfb8bec
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- NTEzZjc4NjUwMDFmM2ZkZmMyNjU5NDVjZjE5MGY3ZjEyOTc5NDM4ZGU3MGVm
10
- OWU5OWY1ZTFhNjk5Zjg3YTdkYWNhNzEwMzQwNzk2MjlmODFiNzI1MjkwYTBi
11
- MGY3MzVkNjk1NjNlODEzMTRmN2I3MWU3YjMzZjRmMGEwMTEzOTg=
12
- data.tar.gz: !binary |-
13
- OGZiZmU3NmM5NzBlYzE4YTkzMGViYzZiNjU3ZjMwNjNmMThmYmJhZTAyYTBi
14
- MjQ4NWYzMTA2ZDFjNmRiMjQyOTZjYTljYjZkYjQ3NWVjOWUwNjExY2FlMzBm
15
- MmY3ZDg1YzNhZjY0NGY0MmRhMjFjZjViNzYxYzE5NjU2MDhmZGE=
6
+ metadata.gz: 78405155eaee2ec1d350b551a70db6ac78a772a7a9e6c714fb8bf70b5c501da4c4b55f141aa85539bca78e0b7cb651406a292c92c1c2a3382ad8ff620194817e
7
+ data.tar.gz: dbcb2ecca96defb4b5b8e518d7873ba8b41d55f46d1196b05361cccee502be3014f9139f77e4b6e7468ea0f713561a3c768d39d16ebdd751844b887f00f4b550
data/README.md CHANGED
@@ -4,9 +4,6 @@
4
4
 
5
5
  This library wraps Twitter's [Nutcracker](https://github.com/twitter/twemproxy) in a gem package and provides a simple ruby API to the `nutcracker` executable.
6
6
 
7
- ### Disclaimer
8
- this project is still in its early stages so things could be a little bit buggy, if you find one feel free to [report](https://github.com/kontera-technologies/nutcracker/issues) it.
9
-
10
7
  ## Motivation
11
8
  The main motivation here is to take the advantages of working with Bundler's dependencies management and to be able to embed Twitter's [Nutcracker](https://github.com/twitter/twemproxy) as a dependency to any Ruby project, this allow you to create small-configuration-only-apps tied to specific version of Nutcracker as I show in the example bellow.
12
9
 
@@ -85,3 +82,6 @@ This software is provided “as is” and without any express or implied warrant
85
82
 
86
83
  > for more details like licensing etc, please look @ [Nutcracker](https://github.com/twitter/twemproxy)
87
84
 
85
+
86
+ ### Disclaimer
87
+ this project is still in its early stages so things could be a little bit buggy, if you find one feel free to [report](https://github.com/kontera-technologies/nutcracker/issues) it.
data/Rakefile CHANGED
@@ -8,16 +8,17 @@ Nutcracker::GemSpec = eval File.read 'nutcracker.gemspec'
8
8
 
9
9
  sversion = Nutcracker.version.split(".")[0..2].join(".")
10
10
 
11
+ desc "Download Nutcracker c app"
11
12
  task :download do
12
- "nutcracker-#{sversion}.tar.gz".tap do |tarball|
13
+ "twemproxy-#{sversion}.tar.gz".tap do |tarball|
13
14
  sh "mkdir ext" unless File.directory? "ext"
14
15
  sh "rm -rf ext/nutcracker"
15
- sh "wget https://twemproxy.googlecode.com/files/#{tarball}"
16
+ sh "wget https://github.com/twitter/twemproxy/archive/v#{sversion}.tar.gz -O #{tarball}"
16
17
  sh "tar -zxvf #{tarball}"
17
- sh "mv nutcracker-#{sversion} ext/nutcracker"
18
+ sh "mv twemproxy-#{sversion} ext/nutcracker"
19
+ Dir.chdir("ext/nutcracker") { sh "autoreconf -fvi"}
18
20
  File.open("ext/nutcracker/extconf.rb",'w') do |file|
19
21
  file.puts %q{
20
- #raise "no support for #{RUBY_PLATFORM}" if RUBY_PLATFORM =~ /darwin|mswin|mingw/
21
22
  system "./configure --prefix=#{File.expand_path('..',__FILE__)}"
22
23
  system 'make'
23
24
  }
@@ -26,13 +27,10 @@ task :download do
26
27
  end
27
28
  end
28
29
 
29
- task :build => :download do
30
- sh "rake gem"
31
- end
32
-
33
- task :gem => [:clobber_package]
30
+ desc "Download the Nutcracker C app and build new Gem"
31
+ task :gem => [:clobber_package,:download]
34
32
 
35
- Gem::PackageTask.new Nutcracker::GemSpec do |p|
33
+ Gem::PackageTask.new(Nutcracker::GemSpec) do |p|
36
34
  p.gem_spec = Nutcracker::GemSpec
37
35
  end
38
36
 
@@ -44,6 +42,10 @@ end
44
42
  ## Tests stuff
45
43
  task :default => :test
46
44
 
45
+ task :test do
46
+ sh "./compile_ext.bash" unless File.exists? "ext/nutcracker/src/nutcracker"
47
+ end
48
+
47
49
  Rake::TestTask.new(:test) do |t|
48
50
  t.libs << "tests"
49
51
  t.pattern = "tests/**/*_test.rb"
@@ -1,9 +1,8 @@
1
- # Makefile.in generated by automake 1.11.3 from Makefile.am.
1
+ # Makefile.in generated by automake 1.14.1 from Makefile.am.
2
2
  # @configure_input@
3
3
 
4
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
5
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
6
- # Foundation, Inc.
4
+ # Copyright (C) 1994-2013 Free Software Foundation, Inc.
5
+
7
6
  # This Makefile.in is free software; the Free Software Foundation
8
7
  # gives unlimited permission to copy and/or distribute it,
9
8
  # with or without modifications, as long as this notice is preserved.
@@ -15,6 +14,51 @@
15
14
 
16
15
  @SET_MAKE@
17
16
  VPATH = @srcdir@
17
+ am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
18
+ am__make_running_with_option = \
19
+ case $${target_option-} in \
20
+ ?) ;; \
21
+ *) echo "am__make_running_with_option: internal error: invalid" \
22
+ "target option '$${target_option-}' specified" >&2; \
23
+ exit 1;; \
24
+ esac; \
25
+ has_opt=no; \
26
+ sane_makeflags=$$MAKEFLAGS; \
27
+ if $(am__is_gnu_make); then \
28
+ sane_makeflags=$$MFLAGS; \
29
+ else \
30
+ case $$MAKEFLAGS in \
31
+ *\\[\ \ ]*) \
32
+ bs=\\; \
33
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
34
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
35
+ esac; \
36
+ fi; \
37
+ skip_next=no; \
38
+ strip_trailopt () \
39
+ { \
40
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
41
+ }; \
42
+ for flg in $$sane_makeflags; do \
43
+ test $$skip_next = yes && { skip_next=no; continue; }; \
44
+ case $$flg in \
45
+ *=*|--*) continue;; \
46
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
47
+ -*I?*) strip_trailopt 'I';; \
48
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
49
+ -*O?*) strip_trailopt 'O';; \
50
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
51
+ -*l?*) strip_trailopt 'l';; \
52
+ -[dEDm]) skip_next=yes;; \
53
+ -[JT]) skip_next=yes;; \
54
+ esac; \
55
+ case $$flg in \
56
+ *$$target_option*) has_opt=yes; break;; \
57
+ esac; \
58
+ done; \
59
+ test $$has_opt = yes
60
+ am__make_dryrun = (target_option=n; $(am__make_running_with_option))
61
+ am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
18
62
  pkgdatadir = $(datadir)/@PACKAGE@
19
63
  pkgincludedir = $(includedir)/@PACKAGE@
20
64
  pkglibdir = $(libdir)/@PACKAGE@
@@ -34,11 +78,15 @@ POST_UNINSTALL = :
34
78
  build_triplet = @build@
35
79
  host_triplet = @host@
36
80
  subdir = .
37
- DIST_COMMON = $(am__configure_deps) $(dist_man_MANS) \
38
- $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
39
- $(srcdir)/config.h.in $(top_srcdir)/configure ChangeLog \
40
- config/config.guess config/config.sub config/depcomp \
41
- config/install-sh config/ltmain.sh config/missing
81
+ DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
82
+ $(top_srcdir)/configure $(am__configure_deps) \
83
+ $(srcdir)/config.h.in $(dist_man_MANS) ChangeLog \
84
+ config/compile config/config.guess config/config.sub \
85
+ config/install-sh config/missing config/ltmain.sh \
86
+ $(top_srcdir)/config/compile $(top_srcdir)/config/config.guess \
87
+ $(top_srcdir)/config/config.sub \
88
+ $(top_srcdir)/config/install-sh $(top_srcdir)/config/ltmain.sh \
89
+ $(top_srcdir)/config/missing
42
90
  ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
43
91
  am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
44
92
  $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
@@ -52,15 +100,33 @@ mkinstalldirs = $(install_sh) -d
52
100
  CONFIG_HEADER = config.h
53
101
  CONFIG_CLEAN_FILES =
54
102
  CONFIG_CLEAN_VPATH_FILES =
103
+ AM_V_P = $(am__v_P_@AM_V@)
104
+ am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
105
+ am__v_P_0 = false
106
+ am__v_P_1 = :
107
+ AM_V_GEN = $(am__v_GEN_@AM_V@)
108
+ am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
109
+ am__v_GEN_0 = @echo " GEN " $@;
110
+ am__v_GEN_1 =
111
+ AM_V_at = $(am__v_at_@AM_V@)
112
+ am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
113
+ am__v_at_0 = @
114
+ am__v_at_1 =
55
115
  SOURCES =
56
116
  DIST_SOURCES =
57
- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
58
- html-recursive info-recursive install-data-recursive \
59
- install-dvi-recursive install-exec-recursive \
60
- install-html-recursive install-info-recursive \
61
- install-pdf-recursive install-ps-recursive install-recursive \
62
- installcheck-recursive installdirs-recursive pdf-recursive \
63
- ps-recursive uninstall-recursive
117
+ RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
118
+ ctags-recursive dvi-recursive html-recursive info-recursive \
119
+ install-data-recursive install-dvi-recursive \
120
+ install-exec-recursive install-html-recursive \
121
+ install-info-recursive install-pdf-recursive \
122
+ install-ps-recursive install-recursive installcheck-recursive \
123
+ installdirs-recursive pdf-recursive ps-recursive \
124
+ tags-recursive uninstall-recursive
125
+ am__can_run_installinfo = \
126
+ case $$AM_UPDATE_INFO_DIR in \
127
+ n|no|NO) false;; \
128
+ *) (install-info --version) >/dev/null 2>&1;; \
129
+ esac
64
130
  am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
65
131
  am__vpath_adj = case $$p in \
66
132
  $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -94,11 +160,33 @@ NROFF = nroff
94
160
  MANS = $(dist_man_MANS)
95
161
  RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
96
162
  distclean-recursive maintainer-clean-recursive
97
- AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
98
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
99
- distdir dist dist-all distcheck
163
+ am__recursive_targets = \
164
+ $(RECURSIVE_TARGETS) \
165
+ $(RECURSIVE_CLEAN_TARGETS) \
166
+ $(am__extra_recursive_targets)
167
+ AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
168
+ cscope distdir dist dist-all distcheck
169
+ am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
170
+ $(LISP)config.h.in
171
+ # Read a list of newline-separated strings from the standard input,
172
+ # and print each of them once, without duplicates. Input order is
173
+ # *not* preserved.
174
+ am__uniquify_input = $(AWK) '\
175
+ BEGIN { nonempty = 0; } \
176
+ { items[$$0] = 1; nonempty = 1; } \
177
+ END { if (nonempty) { for (i in items) print i; }; } \
178
+ '
179
+ # Make sure the list of sources is unique. This is necessary because,
180
+ # e.g., the same source file might be shared among _SOURCES variables
181
+ # for different programs/libraries.
182
+ am__define_uniq_tagged_files = \
183
+ list='$(am__tagged_files)'; \
184
+ unique=`for i in $$list; do \
185
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
186
+ done | $(am__uniquify_input)`
100
187
  ETAGS = etags
101
188
  CTAGS = ctags
189
+ CSCOPE = cscope
102
190
  DIST_SUBDIRS = $(SUBDIRS)
103
191
  DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
104
192
  distdir = $(PACKAGE)-$(VERSION)
@@ -109,6 +197,7 @@ am__remove_distdir = \
109
197
  && rm -rf "$(distdir)" \
110
198
  || { sleep 5 && rm -rf "$(distdir)"; }; \
111
199
  else :; fi
200
+ am__post_remove_distdir = $(am__remove_distdir)
112
201
  am__relativize = \
113
202
  dir0=`pwd`; \
114
203
  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
@@ -136,12 +225,14 @@ am__relativize = \
136
225
  reldir="$$dir2"
137
226
  DIST_ARCHIVES = $(distdir).tar.gz
138
227
  GZIP_ENV = --best
228
+ DIST_TARGETS = dist-gzip
139
229
  distuninstallcheck_listfiles = find . -type f -print
140
230
  am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
141
231
  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
142
232
  distcleancheck_listfiles = find . -type f -print
143
233
  ACLOCAL = @ACLOCAL@
144
234
  AMTAR = @AMTAR@
235
+ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
145
236
  AR = @AR@
146
237
  AUTOCONF = @AUTOCONF@
147
238
  AUTOHEADER = @AUTOHEADER@
@@ -304,8 +395,8 @@ $(ACLOCAL_M4): $(am__aclocal_m4_deps)
304
395
  $(am__aclocal_m4_deps):
305
396
 
306
397
  config.h: stamp-h1
307
- @if test ! -f $@; then rm -f stamp-h1; else :; fi
308
- @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
398
+ @test -f $@ || rm -f stamp-h1
399
+ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
309
400
 
310
401
  stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
311
402
  @rm -f stamp-h1
@@ -328,11 +419,18 @@ distclean-libtool:
328
419
  -rm -f libtool config.lt
329
420
  install-man8: $(dist_man_MANS)
330
421
  @$(NORMAL_INSTALL)
331
- test -z "$(man8dir)" || $(MKDIR_P) "$(DESTDIR)$(man8dir)"
332
- @list=''; test -n "$(man8dir)" || exit 0; \
333
- { for i in $$list; do echo "$$i"; done; \
334
- l2='$(dist_man_MANS)'; for i in $$l2; do echo "$$i"; done | \
335
- sed -n '/\.8[a-z]*$$/p'; \
422
+ @list1=''; \
423
+ list2='$(dist_man_MANS)'; \
424
+ test -n "$(man8dir)" \
425
+ && test -n "`echo $$list1$$list2`" \
426
+ || exit 0; \
427
+ echo " $(MKDIR_P) '$(DESTDIR)$(man8dir)'"; \
428
+ $(MKDIR_P) "$(DESTDIR)$(man8dir)" || exit 1; \
429
+ { for i in $$list1; do echo "$$i"; done; \
430
+ if test -n "$$list2"; then \
431
+ for i in $$list2; do echo "$$i"; done \
432
+ | sed -n '/\.8[a-z]*$$/p'; \
433
+ fi; \
336
434
  } | while read p; do \
337
435
  if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
338
436
  echo "$$d$$p"; echo "$$p"; \
@@ -364,22 +462,25 @@ uninstall-man8:
364
462
  dir='$(DESTDIR)$(man8dir)'; $(am__uninstall_files_from_dir)
365
463
 
366
464
  # This directory's subdirectories are mostly independent; you can cd
367
- # into them and run `make' without going through this Makefile.
368
- # To change the values of `make' variables: instead of editing Makefiles,
369
- # (1) if the variable is set in `config.status', edit `config.status'
370
- # (which will cause the Makefiles to be regenerated when you run `make');
371
- # (2) otherwise, pass the desired values on the `make' command line.
372
- $(RECURSIVE_TARGETS):
373
- @fail= failcom='exit 1'; \
374
- for f in x $$MAKEFLAGS; do \
375
- case $$f in \
376
- *=* | --[!k]*);; \
377
- *k*) failcom='fail=yes';; \
378
- esac; \
379
- done; \
465
+ # into them and run 'make' without going through this Makefile.
466
+ # To change the values of 'make' variables: instead of editing Makefiles,
467
+ # (1) if the variable is set in 'config.status', edit 'config.status'
468
+ # (which will cause the Makefiles to be regenerated when you run 'make');
469
+ # (2) otherwise, pass the desired values on the 'make' command line.
470
+ $(am__recursive_targets):
471
+ @fail=; \
472
+ if $(am__make_keepgoing); then \
473
+ failcom='fail=yes'; \
474
+ else \
475
+ failcom='exit 1'; \
476
+ fi; \
380
477
  dot_seen=no; \
381
478
  target=`echo $@ | sed s/-recursive//`; \
382
- list='$(SUBDIRS)'; for subdir in $$list; do \
479
+ case "$@" in \
480
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
481
+ *) list='$(SUBDIRS)' ;; \
482
+ esac; \
483
+ for subdir in $$list; do \
383
484
  echo "Making $$target in $$subdir"; \
384
485
  if test "$$subdir" = "."; then \
385
486
  dot_seen=yes; \
@@ -394,57 +495,12 @@ $(RECURSIVE_TARGETS):
394
495
  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
395
496
  fi; test -z "$$fail"
396
497
 
397
- $(RECURSIVE_CLEAN_TARGETS):
398
- @fail= failcom='exit 1'; \
399
- for f in x $$MAKEFLAGS; do \
400
- case $$f in \
401
- *=* | --[!k]*);; \
402
- *k*) failcom='fail=yes';; \
403
- esac; \
404
- done; \
405
- dot_seen=no; \
406
- case "$@" in \
407
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
408
- *) list='$(SUBDIRS)' ;; \
409
- esac; \
410
- rev=''; for subdir in $$list; do \
411
- if test "$$subdir" = "."; then :; else \
412
- rev="$$subdir $$rev"; \
413
- fi; \
414
- done; \
415
- rev="$$rev ."; \
416
- target=`echo $@ | sed s/-recursive//`; \
417
- for subdir in $$rev; do \
418
- echo "Making $$target in $$subdir"; \
419
- if test "$$subdir" = "."; then \
420
- local_target="$$target-am"; \
421
- else \
422
- local_target="$$target"; \
423
- fi; \
424
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
425
- || eval $$failcom; \
426
- done && test -z "$$fail"
427
- tags-recursive:
428
- list='$(SUBDIRS)'; for subdir in $$list; do \
429
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
430
- done
431
- ctags-recursive:
432
- list='$(SUBDIRS)'; for subdir in $$list; do \
433
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
434
- done
498
+ ID: $(am__tagged_files)
499
+ $(am__define_uniq_tagged_files); mkid -fID $$unique
500
+ tags: tags-recursive
501
+ TAGS: tags
435
502
 
436
- ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
437
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
438
- unique=`for i in $$list; do \
439
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
440
- done | \
441
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
442
- END { if (nonempty) { for (i in files) print i; }; }'`; \
443
- mkid -fID $$unique
444
- tags: TAGS
445
-
446
- TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
447
- $(TAGS_FILES) $(LISP)
503
+ tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
448
504
  set x; \
449
505
  here=`pwd`; \
450
506
  if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -460,12 +516,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
460
516
  set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
461
517
  fi; \
462
518
  done; \
463
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
464
- unique=`for i in $$list; do \
465
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
466
- done | \
467
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
468
- END { if (nonempty) { for (i in files) print i; }; }'`; \
519
+ $(am__define_uniq_tagged_files); \
469
520
  shift; \
470
521
  if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
471
522
  test -n "$$unique" || unique=$$empty_fix; \
@@ -477,15 +528,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
477
528
  $$unique; \
478
529
  fi; \
479
530
  fi
480
- ctags: CTAGS
481
- CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
482
- $(TAGS_FILES) $(LISP)
483
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
484
- unique=`for i in $$list; do \
485
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
486
- done | \
487
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
488
- END { if (nonempty) { for (i in files) print i; }; }'`; \
531
+ ctags: ctags-recursive
532
+
533
+ CTAGS: ctags
534
+ ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
535
+ $(am__define_uniq_tagged_files); \
489
536
  test -z "$(CTAGS_ARGS)$$unique" \
490
537
  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
491
538
  $$unique
@@ -494,24 +541,33 @@ GTAGS:
494
541
  here=`$(am__cd) $(top_builddir) && pwd` \
495
542
  && $(am__cd) $(top_srcdir) \
496
543
  && gtags -i $(GTAGS_ARGS) "$$here"
544
+ cscope: cscope.files
545
+ test ! -s cscope.files \
546
+ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
547
+ clean-cscope:
548
+ -rm -f cscope.files
549
+ cscope.files: clean-cscope cscopelist
550
+ cscopelist: cscopelist-recursive
551
+
552
+ cscopelist-am: $(am__tagged_files)
553
+ list='$(am__tagged_files)'; \
554
+ case "$(srcdir)" in \
555
+ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
556
+ *) sdir=$(subdir)/$(srcdir) ;; \
557
+ esac; \
558
+ for i in $$list; do \
559
+ if test -f "$$i"; then \
560
+ echo "$(subdir)/$$i"; \
561
+ else \
562
+ echo "$$sdir/$$i"; \
563
+ fi; \
564
+ done >> $(top_builddir)/cscope.files
497
565
 
498
566
  distclean-tags:
499
567
  -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
568
+ -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
500
569
 
501
570
  distdir: $(DISTFILES)
502
- @list='$(MANS)'; if test -n "$$list"; then \
503
- list=`for p in $$list; do \
504
- if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
505
- if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
506
- if test -n "$$list" && \
507
- grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
508
- echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
509
- grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
510
- echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
511
- echo " typically \`make maintainer-clean' will remove them" >&2; \
512
- exit 1; \
513
- else :; fi; \
514
- else :; fi
515
571
  $(am__remove_distdir)
516
572
  test -d "$(distdir)" || mkdir "$(distdir)"
517
573
  @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -545,13 +601,10 @@ distdir: $(DISTFILES)
545
601
  done
546
602
  @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
547
603
  if test "$$subdir" = .; then :; else \
548
- test -d "$(distdir)/$$subdir" \
549
- || $(MKDIR_P) "$(distdir)/$$subdir" \
550
- || exit 1; \
551
- fi; \
552
- done
553
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
554
- if test "$$subdir" = .; then :; else \
604
+ $(am__make_dryrun) \
605
+ || test -d "$(distdir)/$$subdir" \
606
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
607
+ || exit 1; \
555
608
  dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
556
609
  $(am__relativize); \
557
610
  new_distdir=$$reldir; \
@@ -580,40 +633,42 @@ distdir: $(DISTFILES)
580
633
  || chmod -R a+r "$(distdir)"
581
634
  dist-gzip: distdir
582
635
  tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
583
- $(am__remove_distdir)
636
+ $(am__post_remove_distdir)
584
637
 
585
638
  dist-bzip2: distdir
586
639
  tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
587
- $(am__remove_distdir)
640
+ $(am__post_remove_distdir)
588
641
 
589
642
  dist-lzip: distdir
590
643
  tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
591
- $(am__remove_distdir)
592
-
593
- dist-lzma: distdir
594
- tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
595
- $(am__remove_distdir)
644
+ $(am__post_remove_distdir)
596
645
 
597
646
  dist-xz: distdir
598
647
  tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
599
- $(am__remove_distdir)
648
+ $(am__post_remove_distdir)
600
649
 
601
650
  dist-tarZ: distdir
651
+ @echo WARNING: "Support for shar distribution archives is" \
652
+ "deprecated." >&2
653
+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
602
654
  tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
603
- $(am__remove_distdir)
655
+ $(am__post_remove_distdir)
604
656
 
605
657
  dist-shar: distdir
658
+ @echo WARNING: "Support for distribution archives compressed with" \
659
+ "legacy program 'compress' is deprecated." >&2
660
+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
606
661
  shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
607
- $(am__remove_distdir)
662
+ $(am__post_remove_distdir)
608
663
 
609
664
  dist-zip: distdir
610
665
  -rm -f $(distdir).zip
611
666
  zip -rq $(distdir).zip $(distdir)
612
- $(am__remove_distdir)
667
+ $(am__post_remove_distdir)
613
668
 
614
- dist dist-all: distdir
615
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
616
- $(am__remove_distdir)
669
+ dist dist-all:
670
+ $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
671
+ $(am__post_remove_distdir)
617
672
 
618
673
  # This target untars the dist file and tries a VPATH configuration. Then
619
674
  # it guarantees that the distribution is self-contained by making another
@@ -624,8 +679,6 @@ distcheck: dist
624
679
  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
625
680
  *.tar.bz2*) \
626
681
  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
627
- *.tar.lzma*) \
628
- lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
629
682
  *.tar.lz*) \
630
683
  lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
631
684
  *.tar.xz*) \
@@ -637,18 +690,19 @@ distcheck: dist
637
690
  *.zip*) \
638
691
  unzip $(distdir).zip ;;\
639
692
  esac
640
- chmod -R a-w $(distdir); chmod a+w $(distdir)
641
- mkdir $(distdir)/_build
642
- mkdir $(distdir)/_inst
693
+ chmod -R a-w $(distdir)
694
+ chmod u+w $(distdir)
695
+ mkdir $(distdir)/_build $(distdir)/_inst
643
696
  chmod a-w $(distdir)
644
697
  test -d $(distdir)/_build || exit 0; \
645
698
  dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
646
699
  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
647
700
  && am__cwd=`pwd` \
648
701
  && $(am__cd) $(distdir)/_build \
649
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
702
+ && ../configure \
650
703
  $(AM_DISTCHECK_CONFIGURE_FLAGS) \
651
704
  $(DISTCHECK_CONFIGURE_FLAGS) \
705
+ --srcdir=.. --prefix="$$dc_install_base" \
652
706
  && $(MAKE) $(AM_MAKEFLAGS) \
653
707
  && $(MAKE) $(AM_MAKEFLAGS) dvi \
654
708
  && $(MAKE) $(AM_MAKEFLAGS) check \
@@ -671,7 +725,7 @@ distcheck: dist
671
725
  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
672
726
  && cd "$$am__cwd" \
673
727
  || exit 1
674
- $(am__remove_distdir)
728
+ $(am__post_remove_distdir)
675
729
  @(echo "$(distdir) archives ready for distribution: "; \
676
730
  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
677
731
  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
@@ -812,25 +866,24 @@ uninstall-am: uninstall-man
812
866
 
813
867
  uninstall-man: uninstall-man8
814
868
 
815
- .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
816
- ctags-recursive install-am install-strip tags-recursive
817
-
818
- .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
819
- all all-am am--refresh check check-am clean clean-generic \
820
- clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
821
- dist-gzip dist-lzip dist-lzma dist-shar dist-tarZ dist-xz \
822
- dist-zip distcheck distclean distclean-generic distclean-hdr \
823
- distclean-libtool distclean-tags distcleancheck distdir \
824
- distuninstallcheck dvi dvi-am html html-am info info-am \
825
- install install-am install-data install-data-am install-dvi \
826
- install-dvi-am install-exec install-exec-am install-html \
827
- install-html-am install-info install-info-am install-man \
828
- install-man8 install-pdf install-pdf-am install-ps \
869
+ .MAKE: $(am__recursive_targets) all install-am install-strip
870
+
871
+ .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
872
+ am--refresh check check-am clean clean-cscope clean-generic \
873
+ clean-libtool cscope cscopelist-am ctags ctags-am dist \
874
+ dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
875
+ dist-xz dist-zip distcheck distclean distclean-generic \
876
+ distclean-hdr distclean-libtool distclean-tags distcleancheck \
877
+ distdir distuninstallcheck dvi dvi-am html html-am info \
878
+ info-am install install-am install-data install-data-am \
879
+ install-dvi install-dvi-am install-exec install-exec-am \
880
+ install-html install-html-am install-info install-info-am \
881
+ install-man install-man8 install-pdf install-pdf-am install-ps \
829
882
  install-ps-am install-strip installcheck installcheck-am \
830
883
  installdirs installdirs-am maintainer-clean \
831
884
  maintainer-clean-generic mostlyclean mostlyclean-generic \
832
- mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
833
- uninstall uninstall-am uninstall-man uninstall-man8
885
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
886
+ uninstall-am uninstall-man uninstall-man8
834
887
 
835
888
 
836
889
  # Tell versions [3.59,3.63) of GNU make to not export all variables.