fancy 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. data/AUTHORS +2 -0
  2. data/README.md +6 -1
  3. data/bin/fancy +6 -0
  4. data/bin/ifancy +44 -3
  5. data/boot/fancy_ext/module.rb +4 -0
  6. data/boot/fancy_ext/object.rb +4 -0
  7. data/boot/rbx-compiler/compiler/ast/block.rb +29 -1
  8. data/boot/rbx-compiler/compiler/ast/identifier.rb +6 -0
  9. data/boot/rbx-compiler/compiler/ast/message_send.rb +1 -0
  10. data/boot/rbx-compiler/parser/fancy_parser.bundle +0 -0
  11. data/boot/rbx-compiler/parser/lexer.lex +2 -0
  12. data/boot/rbx-compiler/parser/parser.rb +6 -0
  13. data/boot/rbx-compiler/parser/parser.y +14 -1
  14. data/doc/api/fancy.jsonp +1 -1
  15. data/doc/features.md +24 -0
  16. data/examples/99bottles.fy +5 -0
  17. data/examples/conditions_exceptions.fy +9 -0
  18. data/examples/conditions_parsing.fy +68 -0
  19. data/examples/greeter.fy +9 -0
  20. data/examples/html_generator.fy +59 -29
  21. data/examples/webserver/webserver.fy +8 -11
  22. data/lib/argv.fy +6 -0
  23. data/lib/array.fy +17 -35
  24. data/lib/block.fy +82 -1
  25. data/lib/boot.fy +4 -2
  26. data/lib/compiler.fy +2 -2
  27. data/lib/compiler/ast/block.fy +24 -20
  28. data/lib/compiler/ast/message_send.fy +11 -0
  29. data/lib/contracts.fy +60 -0
  30. data/lib/dynamic_slot_object.fy +61 -0
  31. data/lib/enumerable.fy +432 -394
  32. data/lib/enumerator.fy +152 -150
  33. data/lib/fdoc.fy +4 -17
  34. data/lib/fiber.fy +4 -10
  35. data/lib/file.fy +33 -25
  36. data/lib/future.fy +59 -5
  37. data/lib/hash.fy +54 -1
  38. data/lib/html.fy +107 -0
  39. data/lib/kvo.fy +173 -0
  40. data/lib/main.fy +6 -2
  41. data/lib/message_sink.fy +19 -0
  42. data/lib/number.fy +48 -0
  43. data/lib/object.fy +65 -13
  44. data/lib/package.fy +12 -2
  45. data/lib/package/dependency.fy +13 -0
  46. data/lib/package/dependency_installer.fy +27 -0
  47. data/lib/package/installer.fy +4 -10
  48. data/lib/package/uninstaller.fy +1 -3
  49. data/lib/parser/ext/lexer.lex +8 -3
  50. data/lib/parser/ext/parser.y +4 -1
  51. data/lib/parser/methods.fy +7 -3
  52. data/lib/range.fy +1 -1
  53. data/lib/rbx.fy +2 -1
  54. data/lib/rbx/array.fy +28 -12
  55. data/lib/rbx/bignum.fy +1 -1
  56. data/lib/rbx/block.fy +27 -0
  57. data/lib/rbx/console.fy +6 -6
  58. data/lib/rbx/date.fy +6 -1
  59. data/lib/rbx/documentation.fy +8 -3
  60. data/lib/rbx/exception.fy +5 -0
  61. data/lib/rbx/file.fy +40 -7
  62. data/lib/rbx/fixnum.fy +12 -1
  63. data/lib/rbx/method.fy +9 -2
  64. data/lib/rbx/module.fy +24 -0
  65. data/lib/rbx/regexp.fy +8 -0
  66. data/lib/rbx/string.fy +23 -7
  67. data/lib/rbx/tcp_server.fy +4 -2
  68. data/lib/rbx/tcp_socket.fy +14 -0
  69. data/lib/remote_object.fy +59 -0
  70. data/lib/set.fy +15 -4
  71. data/lib/string.fy +38 -5
  72. data/lib/stringio.fy +1 -0
  73. data/lib/symbol.fy +4 -0
  74. data/lib/system.fy +22 -0
  75. data/lib/thread_pool.fy +2 -2
  76. data/lib/tuple.fy +18 -1
  77. data/lib/vars.fy +17 -0
  78. data/lib/version.fy +1 -1
  79. data/ruby_lib/fancy +6 -0
  80. data/tests/array.fy +30 -0
  81. data/tests/block.fy +106 -0
  82. data/tests/class.fy +19 -0
  83. data/tests/enumerable.fy +1 -1
  84. data/tests/enumerator.fy +5 -5
  85. data/tests/file.fy +28 -0
  86. data/tests/fixnum.fy +0 -50
  87. data/tests/future.fy +9 -24
  88. data/tests/hash.fy +35 -0
  89. data/tests/html.fy +33 -0
  90. data/tests/kvo.fy +101 -0
  91. data/tests/number.fy +75 -0
  92. data/tests/object.fy +50 -3
  93. data/tests/string.fy +19 -10
  94. data/tests/symbol.fy +5 -0
  95. data/tests/tuple.fy +7 -0
  96. data/tools/fancy-mode.el +5 -1
  97. metadata +22 -21
  98. data/boot/compiler/parser/ext/fancy_parser.bundle +0 -0
  99. data/boot/rbx-compiler/parser/Makefile +0 -156
  100. data/boot/rbx-compiler/parser/lexer.c +0 -2310
  101. data/boot/rbx-compiler/parser/lexer.h +0 -315
  102. data/boot/rbx-compiler/parser/parser.c +0 -2946
  103. data/boot/rbx-compiler/parser/parser.h +0 -151
  104. data/lib/fiber_pool.fy +0 -78
  105. data/lib/method.fy +0 -6
  106. data/lib/parser/ext/Makefile +0 -156
  107. data/lib/parser/ext/fancy_parser.bundle +0 -0
  108. data/lib/parser/ext/lexer.c +0 -2392
  109. data/lib/parser/ext/lexer.h +0 -315
  110. data/lib/parser/ext/parser.c +0 -3251
  111. data/lib/parser/ext/parser.h +0 -161
@@ -217,7 +217,16 @@ FancySpec describe: Object with: {
217
217
  }
218
218
  }
219
219
 
220
- it: "returns a set of its slot names" with: 'slots when: {
220
+ it: "calls a given block with the receiver before returning itself" with: 'tap: when: {
221
+ 10 + 2 tap: |x| {
222
+ x is: 12
223
+ x is_a?: Number . is: true
224
+ } . is: 12
225
+
226
+ "foo" + "bar" tap: @{ is: "foobar"; * 2 is: "foobarfoobar" } . is: "foobar"
227
+ }
228
+
229
+ it: "returns an array of its slot names" with: 'slots when: {
221
230
  class GotSlots {
222
231
  def initialize {
223
232
  @x, @y = 1, 2
@@ -227,8 +236,46 @@ FancySpec describe: Object with: {
227
236
  }
228
237
  }
229
238
  gs = GotSlots new
230
- gs slots is: $ Set[['x, 'y]]
239
+ Set[gs slots] is: $ Set[['x, 'y]]
231
240
  gs set_another_slot
232
- gs slots is: $ Set[['x,'y,'z]]
241
+ Set[gs slots] is: $ Set[['x,'y,'z]]
242
+ }
243
+
244
+ it: "copies a given list of slots from one object to another" with: 'copy_slots:from: when: {
245
+ o1 = { slot1: "foo" slot2: "bar" } to_object
246
+ o2 = {} to_object
247
+ o2 copy_slots: ['slot1] from: o1
248
+ o2 slots includes?: 'slot1 . is: true
249
+ o2 get_slot: 'slot1 == (o1 slot1) is: true
250
+ }
251
+
252
+ it: "copies all slots from one object to another" with: 'copy_slots_from: when: {
253
+ o1 = { slot1: "foo" slot2: "bar" } to_object
254
+ o2 = {} to_object
255
+ o2 slots is: []
256
+ o2 copy_slots_from: o1
257
+ o2 slots includes?: 'slot1 . is: true
258
+ o2 slots includes?: 'slot2 . is: true
259
+ o2 slots is: $ o1 slots
260
+ o2 get_slot: 'slot1 == (o1 slot1) is: true
261
+ o2 get_slot: 'slot2 == (o1 slot2) is: true
262
+ }
263
+
264
+ it: "returns itself when return is send as a message" with: 'return when: {
265
+ def foo: array {
266
+ array each: @{ return }
267
+ }
268
+ foo: [1,2,3] . is: 1
269
+
270
+ def bar: array values: vals {
271
+ array each: |x| {
272
+ vals << x
273
+ x return
274
+ }
275
+ }
276
+
277
+ v = []
278
+ bar: [1,2,3] values: v . is: 1
279
+ v is: [1]
233
280
  }
234
281
  }
@@ -20,16 +20,16 @@ FancySpec describe: String with: {
20
20
  "hello, world"[[2,5]] . is: "llo,"
21
21
  }
22
22
 
23
- it: "returns the upcased string" with: 'upcase when: {
24
- "hello, world" upcase is: "HELLO, WORLD"
23
+ it: "returns the uppercased string" with: 'uppercase when: {
24
+ "hello, world" uppercase is: "HELLO, WORLD"
25
25
  }
26
26
 
27
- it: "returns the downcased string" with: 'downcase when: {
28
- "HELLO, WORLD" downcase is: "hello, world"
27
+ it: "returns the lowercased string" with: 'lowercase when: {
28
+ "HELLO, WORLD" lowercase is: "hello, world"
29
29
  }
30
30
 
31
- it: "returns the same string by down- and upcasing in a row" when: {
32
- "HELLO, WORLD" downcase upcase is: "HELLO, WORLD"
31
+ it: "returns the same string by lower- and uppercasing in a row" when: {
32
+ "HELLO, WORLD" lowercase uppercase is: "HELLO, WORLD"
33
33
  }
34
34
 
35
35
  it: "iterates over each character in a string" with: 'each: when: {
@@ -74,7 +74,7 @@ FancySpec describe: String with: {
74
74
  x = "'foo" eval
75
75
  x is: 'foo
76
76
  "3 + 4" eval is: 7
77
- "'foo to_s upcase" eval is: "FOO"
77
+ "'foo to_s uppercase" eval is: "FOO"
78
78
  "33.33" eval is: 33.33
79
79
  }
80
80
 
@@ -97,7 +97,16 @@ FancySpec describe: String with: {
97
97
  x = "world"
98
98
  "hello, #{x}!!" is: "hello, world!!"
99
99
 
100
- "hello, #{x}, Fancy #{'rocks to_s upcase}!!" is: "hello, world, Fancy ROCKS!!"
100
+ "hello, #{x}, Fancy #{'rocks to_s uppercase}!!" is: "hello, world, Fancy ROCKS!!"
101
+ }
102
+
103
+ it: "supports string interpolation with multi-line strings" when: {
104
+ str = """
105
+ the next line contains 7:
106
+ #{3 + 4}
107
+ """
108
+ str lines size is: 3
109
+ str lines last is: "7"
101
110
  }
102
111
 
103
112
  it: "returns the String as a Symbol" with: 'to_sym when: {
@@ -152,8 +161,8 @@ FancySpec describe: String with: {
152
161
  }
153
162
 
154
163
  it: "returns an enumerator for its all bytes (fixnum ascii values)" with: 'bytes when: {
155
- "foo" bytes class is: FancyEnumerator
156
- "" bytes class is: FancyEnumerator
164
+ "foo" bytes class is: Fancy Enumerator
165
+ "" bytes class is: Fancy Enumerator
157
166
  }
158
167
 
159
168
  it: "returns a joined string using FancyEnumerable#join:" for: 'join: when: {
@@ -27,4 +27,9 @@ FancySpec describe: Symbol with: {
27
27
  x = true
28
28
  if: x then: 'foo else: 'bar . is: "foo"
29
29
  }
30
+
31
+ it: "returns self" with: 'to_sym when: {
32
+ 'foo to_sym is: 'foo
33
+ 'bar to_sym is: 'bar
34
+ }
30
35
  }
@@ -37,6 +37,13 @@ FancySpec describe: Tuple with: {
37
37
  { Tuple new: 2 } does_not raise: ArgumentError
38
38
  }
39
39
 
40
+ it: "creates tuples dynamically" with: 'with_values when: {
41
+ Tuple with_values: [1,2,3] . is: (1,2,3)
42
+ Tuple with_values: ["foo",'bar,42] . is: ("foo", 'bar, 42)
43
+ Tuple with_values: ('hello, 'world) . is: ('hello, 'world)
44
+ Tuple with_values: "test" . is: ("t","e","s","t")
45
+ }
46
+
40
47
  it: "runs a Block for each element" with: 'each: when: {
41
48
  sum = 0
42
49
  vals = []
@@ -14,6 +14,8 @@
14
14
  ("[0-9]+" . 'font-lock-variable-name-face)
15
15
  ;; floats
16
16
  ("[0-9]+\.[0-9]+" 'font-lock-variable-name-face)
17
+ ;; dynamic vars
18
+ ("\*[a-zA-Z0-9_-]+\*" . font-lock-reference-face)
17
19
  ;; variables & pseudo variables
18
20
  ("\\(^\\|[^_:.@$]\\|\\.\\.\\)\\b\\(super\\|nil\\|self\\|true\\|false\\)\\>" 2 font-lock-variable-name-face)
19
21
  ;; variable names
@@ -23,7 +25,7 @@
23
25
  ;; method definitions
24
26
  ("^\\s *def\\s +\\([^( \t\n]+\\)" 1 font-lock-function-name-face)
25
27
  ;; message selectors
26
- (" \\<[A-z][A-z0-9_-+?!=*/^><%]*:" . font-lock-function-name-face)
28
+ ("\\<[A-z][A-z0-9_-+?!=*/^><%]*:" . font-lock-function-name-face)
27
29
  ;; operators
28
30
  ("\\([-+*/~,<>=&!?%^]+ \\)" 1 'font-lock-function-name-face)
29
31
  ;; general delimited string
@@ -39,6 +41,8 @@
39
41
  (add-to-list 'auto-mode-alist '("\\.fy\\'" . fancy-mode))
40
42
  (add-to-list 'auto-mode-alist '("\\.fancypack\\'" . fancy-mode))
41
43
 
44
+ (add-to-list 'interpreter-mode-alist '("fancy" . fancy-mode))
45
+
42
46
  ;; Ignore .fyc (compiled fancy bytecode) files
43
47
  (add-to-list 'completion-ignored-extensions ".fyc")
44
48
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fancy
3
3
  version: !ruby/object:Gem::Version
4
- hash: 1694540110752149318
4
+ hash: 2770122483358164876
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 5
8
+ - 6
9
9
  - 0
10
- version: 0.5.0
10
+ version: 0.6.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Christopher Bertels
@@ -15,8 +15,7 @@ autorequire:
15
15
  bindir: ruby_lib
16
16
  cert_chain: []
17
17
 
18
- date: 2011-10-05 00:00:00 -07:00
19
- default_executable:
18
+ date: 2012-01-25 00:00:00 Z
20
19
  dependencies: []
21
20
 
22
21
  description: |
@@ -60,8 +59,10 @@ files:
60
59
  - lib/boot.fy
61
60
  - lib/class.fy
62
61
  - lib/compiler.fy
62
+ - lib/contracts.fy
63
63
  - lib/directory.fy
64
64
  - lib/documentation.fy
65
+ - lib/dynamic_slot_object.fy
65
66
  - lib/enumerable.fy
66
67
  - lib/enumerator.fy
67
68
  - lib/eval.fy
@@ -70,14 +71,15 @@ files:
70
71
  - lib/fdoc.fy
71
72
  - lib/fdoc_hook.fy
72
73
  - lib/fiber.fy
73
- - lib/fiber_pool.fy
74
74
  - lib/file.fy
75
75
  - lib/future.fy
76
76
  - lib/hash.fy
77
+ - lib/html.fy
77
78
  - lib/integer.fy
78
79
  - lib/iteration.fy
80
+ - lib/kvo.fy
79
81
  - lib/main.fy
80
- - lib/method.fy
82
+ - lib/message_sink.fy
81
83
  - lib/nil_class.fy
82
84
  - lib/number.fy
83
85
  - lib/object.fy
@@ -86,11 +88,14 @@ files:
86
88
  - lib/proxy.fy
87
89
  - lib/range.fy
88
90
  - lib/rbx.fy
91
+ - lib/remote_object.fy
89
92
  - lib/set.fy
90
93
  - lib/stack.fy
91
94
  - lib/string.fy
95
+ - lib/stringio.fy
92
96
  - lib/struct.fy
93
97
  - lib/symbol.fy
98
+ - lib/system.fy
94
99
  - lib/thread_pool.fy
95
100
  - lib/true_class.fy
96
101
  - lib/tuple.fy
@@ -101,6 +106,7 @@ files:
101
106
  - lib/compiler/compiler.fy
102
107
  - lib/compiler/stages.fy
103
108
  - lib/package/dependency.fy
109
+ - lib/package/dependency_installer.fy
104
110
  - lib/package/installer.fy
105
111
  - lib/package/list.fy
106
112
  - lib/package/specification.fy
@@ -129,6 +135,7 @@ files:
129
135
  - lib/rbx/io.fy
130
136
  - lib/rbx/match_data.fy
131
137
  - lib/rbx/method.fy
138
+ - lib/rbx/module.fy
132
139
  - lib/rbx/mutex.fy
133
140
  - lib/rbx/name_error.fy
134
141
  - lib/rbx/no_method_error.fy
@@ -168,13 +175,7 @@ files:
168
175
  - lib/parser/ext/ext.c
169
176
  - lib/parser/ext/ext.h
170
177
  - lib/parser/ext/extconf.rb
171
- - lib/parser/ext/fancy_parser.bundle
172
- - lib/parser/ext/lexer.c
173
- - lib/parser/ext/lexer.h
174
178
  - lib/parser/ext/lexer.lex
175
- - lib/parser/ext/Makefile
176
- - lib/parser/ext/parser.c
177
- - lib/parser/ext/parser.h
178
179
  - lib/parser/ext/parser.y
179
180
  - lib/parser/ext/README
180
181
  - tests/argv.fy
@@ -191,8 +192,11 @@ files:
191
192
  - tests/fixnum.fy
192
193
  - tests/future.fy
193
194
  - tests/hash.fy
195
+ - tests/html.fy
196
+ - tests/kvo.fy
194
197
  - tests/method.fy
195
198
  - tests/nil_class.fy
199
+ - tests/number.fy
196
200
  - tests/object.fy
197
201
  - tests/pattern_matching.fy
198
202
  - tests/range.fy
@@ -210,6 +214,7 @@ files:
210
214
  - bin/fyi
211
215
  - bin/ifancy
212
216
  - bin/fspec
217
+ - examples/99bottles.fy
213
218
  - examples/actor_bunnies.fy
214
219
  - examples/actors.fy
215
220
  - examples/actors_primitive.fy
@@ -224,6 +229,8 @@ files:
224
229
  - examples/call_with_receiver.fy
225
230
  - examples/class.fy
226
231
  - examples/closures.fy
232
+ - examples/conditions_exceptions.fy
233
+ - examples/conditions_parsing.fy
227
234
  - examples/constant_access.fy
228
235
  - examples/default_args.fy
229
236
  - examples/define_methods.fy
@@ -242,6 +249,7 @@ files:
242
249
  - examples/future_composition.fy
243
250
  - examples/futures.fy
244
251
  - examples/game_of_life.fy
252
+ - examples/greeter.fy
245
253
  - examples/hashes.fy
246
254
  - examples/hello_world.fy
247
255
  - examples/html_generator.fy
@@ -316,12 +324,7 @@ files:
316
324
  - boot/rbx-compiler/parser/fancy_parser.bundle
317
325
  - boot/rbx-compiler/parser/fancy_parser.c
318
326
  - boot/rbx-compiler/parser/fancy_parser.h
319
- - boot/rbx-compiler/parser/lexer.c
320
- - boot/rbx-compiler/parser/lexer.h
321
327
  - boot/rbx-compiler/parser/lexer.lex
322
- - boot/rbx-compiler/parser/Makefile
323
- - boot/rbx-compiler/parser/parser.c
324
- - boot/rbx-compiler/parser/parser.h
325
328
  - boot/rbx-compiler/parser/parser.rb
326
329
  - boot/rbx-compiler/parser/parser.y
327
330
  - boot/rbx-compiler/parser/Rakefile
@@ -347,8 +350,6 @@ files:
347
350
  - boot/rbx-compiler/compiler/ast/super.rb
348
351
  - boot/rbx-compiler/compiler/ast/try_catch_block.rb
349
352
  - boot/rbx-compiler/compiler/ast/tuple_literal.rb
350
- - boot/compiler/parser/ext/fancy_parser.bundle
351
- has_rdoc: true
352
353
  homepage: http://www.fancy-lang.org
353
354
  licenses:
354
355
  - BSD
@@ -378,7 +379,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
378
379
  requirements: []
379
380
 
380
381
  rubyforge_project: fancy
381
- rubygems_version: 1.5.2
382
+ rubygems_version: 1.8.12
382
383
  signing_key:
383
384
  specification_version: 3
384
385
  summary: The Fancy Programming Language
@@ -1,156 +0,0 @@
1
-
2
- SHELL = /bin/sh
3
-
4
- #### Start of system configuration section. ####
5
-
6
- srcdir = /Users/backtype/projects/fancy/boot/rbx-compiler/parser
7
- topdir = /Users/backtype/projects/rubinius/vm/capi/18/include
8
- hdrdir = $(topdir)
9
- VPATH = $(srcdir):$(topdir):$(hdrdir)
10
- prefix = $(DESTDIR)/Users/backtype/projects/rubinius
11
- exec_prefix = $(prefix)
12
- install_prefix = $(DESTDIR)
13
- includedir = $(prefix)/include
14
- bindir = $(DESTDIR)/Users/backtype/projects/rubinius/bin
15
- sysconfdir = $(prefix)/etc
16
- localedir = $(datarootdir)/locale
17
- rubylibdir = $(DESTDIR)/Users/backtype/projects/rubinius/lib/site
18
- sitedir = $(DESTDIR)/Users/backtype/projects/rubinius/lib/site
19
- oldincludedir = $(DESTDIR)/usr/include
20
- libexecdir = $(exec_prefix)/libexec
21
- rubyhdrdir = $(DESTDIR)/Users/backtype/projects/rubinius/vm/capi/18/include
22
- libdir = $(exec_prefix)/lib
23
- dvidir = $(docdir)
24
- docdir = $(datarootdir)/doc/$(PACKAGE)
25
- psdir = $(docdir)
26
- infodir = $(datarootdir)/info
27
- datadir = $(datarootdir)
28
- archdir = $(DESTDIR)/Users/backtype/projects/rubinius/lib/site/x86_64-darwin11.0.0
29
- sharedstatedir = $(prefix)/com
30
- localstatedir = $(prefix)/var
31
- pdfdir = $(docdir)
32
- htmldir = $(docdir)
33
- datarootdir = $(prefix)/share
34
- sbindir = $(exec_prefix)/sbin
35
- sitelibdir = $(DESTDIR)/Users/backtype/projects/rubinius/lib/site
36
- mandir = $(datarootdir)/man
37
- sitearchdir = $(DESTDIR)/Users/backtype/projects/rubinius/lib/site/x86_64-darwin11.0.0
38
-
39
- CC = gcc
40
- LIBRUBY = $(LIBRUBY_SO)
41
- LIBRUBY_A =
42
- LIBRUBYARG_SHARED =
43
- LIBRUBYARG_STATIC =
44
-
45
- RUBY_EXTCONF_H =
46
- CFLAGS = -fPIC -ggdb3 -fPIC -O2
47
- INCFLAGS = -I. -I. -I/Users/backtype/projects/rubinius/vm/capi/18/include -I/Users/backtype/projects/fancy/boot/rbx-compiler/parser
48
- DEFS =
49
- CPPFLAGS =
50
- CXXFLAGS = $(CFLAGS)
51
- ldflags =
52
- dldflags =
53
- archflag =
54
- DLDFLAGS = $(ldflags) $(dldflags) $(archflag)
55
- LDSHARED = gcc -dynamic -bundle -undefined suppress -flat_namespace
56
- AR = ar
57
- EXEEXT =
58
-
59
- RUBY_INSTALL_NAME = rbx
60
- RUBY_SO_NAME = rubinius-2.0.0dev
61
- arch = x86_64-darwin11.0.0
62
- sitearch = x86_64-darwin11.0.0
63
- ruby_version = 1.8
64
- ruby = /Users/backtype/projects/rubinius/bin/rbx
65
- RUBY = $(ruby)
66
- RM = rm -f
67
- MAKEDIRS = mkdir -p
68
- INSTALL = install -c
69
- INSTALL_PROG = $(INSTALL) -m 0755
70
- INSTALL_DATA = $(INSTALL) -m 644
71
- COPY = cp
72
-
73
- #### End of system configuration section. ####
74
-
75
- preload =
76
-
77
- libpath = . $(libdir)
78
- LIBPATH = -L. -L$(libdir)
79
- DEFFILE =
80
-
81
- CLEANFILES = mkmf.log
82
- DISTCLEANFILES =
83
-
84
- extout =
85
- extout_prefix =
86
- target_prefix =
87
- LOCAL_LIBS =
88
- LIBS = $(LIBRUBYARG_STATIC) -lfl
89
- SRCS = fancy_parser.c lexer.c parser.c
90
- OBJS = fancy_parser.o lexer.o parser.o
91
- TARGET = fancy_parser
92
- DLLIB = $(TARGET).bundle
93
- EXTSTATIC =
94
- STATIC_LIB =
95
-
96
- BINDIR = $(bindir)
97
- RUBYCOMMONDIR = $(sitedir)$(target_prefix)
98
- RUBYLIBDIR = $(sitelibdir)$(target_prefix)
99
- RUBYARCHDIR = $(sitearchdir)$(target_prefix)
100
-
101
- TARGET_SO = $(DLLIB)
102
- CLEANLIBS = $(TARGET).bundle $(TARGET).il? $(TARGET).tds $(TARGET).map
103
- CLEANOBJS = *.o *.a *.s[ol] *.pdb *.exp *.bak
104
-
105
- all: $(DLLIB)
106
- static: $(STATIC_LIB)
107
-
108
- clean:
109
- @-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
110
-
111
- distclean: clean
112
- @-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
113
- @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
114
-
115
- realclean: distclean
116
- install: install-so install-rb
117
-
118
- install-so: $(RUBYARCHDIR)
119
- install-so: $(RUBYARCHDIR)/$(DLLIB)
120
- $(RUBYARCHDIR)/$(DLLIB): $(DLLIB)
121
- $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
122
- install-rb: pre-install-rb install-rb-default
123
- install-rb-default: pre-install-rb-default
124
- pre-install-rb: Makefile
125
- pre-install-rb-default: Makefile
126
- $(RUBYARCHDIR):
127
- $(MAKEDIRS) $@
128
-
129
- site-install: site-install-so site-install-rb
130
- site-install-so: install-so
131
- site-install-rb: install-rb
132
-
133
- .SUFFIXES: .c .m .cc .cxx .cpp .C .o
134
-
135
- .cc.o:
136
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
137
-
138
- .cxx.o:
139
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
140
-
141
- .cpp.o:
142
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
143
-
144
- .C.o:
145
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $<
146
-
147
- .c.o:
148
- $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) -c $<
149
-
150
- $(DLLIB): $(OBJS) Makefile
151
- @-$(RM) $@
152
- $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
153
-
154
-
155
-
156
- $(OBJS): ruby.h defines.h