fancy 0.5.0 → 0.6.0

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 (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