netlinx-compile 2.0.0 → 3.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 40eff70a5a7d76ea472329d1a8d496169a2cf936
4
- data.tar.gz: ac5119802f76f715a2cf26ff01be83885c1cb6f2
3
+ metadata.gz: a68682a96264aa1b8cd13c169e2a511bda4411f5
4
+ data.tar.gz: 7808b8c41e423d711ba54b3ef6a0d9a498eaf49c
5
5
  SHA512:
6
- metadata.gz: 43f2dae249ddd91c9778a09d9b0e2f31e0fe505761ec2f66662b3a536677104bc3c7c8d50c75077afe135d1ef668b33b5512e8326f98eeae36a3d3992dfa28e0
7
- data.tar.gz: 37bbb8b34db000fc5c376af99ec05ea0dd1c168f7b013b2237ea152abd7c31ba0810757b71ea13a8b4dc5440703c0dec8867db2782edac53b20018f27fa3dd00
6
+ metadata.gz: a2e2566897936aaabf4aaa05f8e50e3bbc6bef17a0d63a48c8b31890d3acad796a68c1840af8247b7c88062b4122360a85aec3cdadb0dd323324dfc892475ec2
7
+ data.tar.gz: ff51291769c11aaceb750fad129bd7cc0da78312186e85fab9c1ae41d66266255f1f1f9b49ce74878cf081a920b2e32d07c975519e9d8c7a11bf1562e999babf
data/README.md CHANGED
@@ -6,7 +6,30 @@ A wrapper utility for the AMX NetLinx compiler.
6
6
 
7
7
  [![Gem Version](https://badge.fury.io/rb/netlinx-compile.png)](http://badge.fury.io/rb/netlinx-compile)
8
8
 
9
- This library provides an executable, `netlinx-compile`, that wraps the `nlrc.exe` NetLinx compiler provided by AMX. It is designed for easier command line access, as well as for integration with third-party tools with source code build support, like text editors and IDE's. Also provided in this library is a Ruby API for invoking the NetLinx compiler.
9
+ This library provides an executable, `netlinx-compile`, that wraps the `nlrc.exe`
10
+ NetLinx compiler provided by AMX. It is designed for easier command line access,
11
+ as well as for integration with third-party tools with source code build support,
12
+ like text editors and IDE's. Also provided in this library is a Ruby API for
13
+ invoking the NetLinx compiler.
14
+
15
+
16
+ ## Upgrade Notice
17
+
18
+ AMX has broken NetLinx compilier functionality between NLRC.exe v1.0
19
+ (distributed with NetLinx Studio v3.x) and NLRC.exe v2.1 (distributed with
20
+ NetLinx Studio 4). NLRC.exe v2.x was distributed with NetLinx Studio 4 versions
21
+ less than 4.1.1204, and has major problems. It is recommended to *avoid*
22
+ NLRC.exe v2.x. NLRC.exe v3.x started being distributed in NetLinx Studio
23
+ v4.1.1204 and appears to have fixed the problems when compiling include and Duet
24
+ files. Due to the major changes in the NetLinx compiler, it may be necessary
25
+ to use version 1.x of netlinx-compile when working with projects created with
26
+ NetLinx Studio v3.x or earlier.
27
+
28
+ * Version 1.x of netlinx-compile targets NLRC.exe v1.x.
29
+ * NLRC.exe v2.x is considered broken and is unsupported by netlinx-compile.
30
+ * Version 3.x of netlinx-compile targets NLRC.exe v3.x.
31
+
32
+ [AMX NetLinx Compiler Bug List](https://github.com/amclain/netlinx-compile/labels/amx%20bug%20-%20can't%20fix)
10
33
 
11
34
 
12
35
  ## Documentation
@@ -110,7 +110,7 @@
110
110
  </div>
111
111
 
112
112
  <div id="footer">
113
- Generated on Mon Jan 26 15:35:28 2015 by
113
+ Generated on Mon Jan 26 15:35:58 2015 by
114
114
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
115
115
  0.8.7.6 (ruby-2.1.5).
116
116
  </div>
@@ -110,7 +110,7 @@
110
110
  </div>
111
111
 
112
112
  <div id="footer">
113
- Generated on Mon Jan 26 15:35:28 2015 by
113
+ Generated on Mon Jan 26 15:35:58 2015 by
114
114
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
115
115
  0.8.7.6 (ruby-2.1.5).
116
116
  </div>
@@ -106,7 +106,7 @@
106
106
  </div>
107
107
 
108
108
  <div id="footer">
109
- Generated on Mon Jan 26 15:35:28 2015 by
109
+ Generated on Mon Jan 26 15:35:58 2015 by
110
110
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
111
111
  0.8.7.6 (ruby-2.1.5).
112
112
  </div>
@@ -208,7 +208,7 @@
208
208
  </div>
209
209
 
210
210
  <div id="footer">
211
- Generated on Mon Jan 26 15:35:29 2015 by
211
+ Generated on Mon Jan 26 15:35:58 2015 by
212
212
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
213
213
  0.8.7.6 (ruby-2.1.5).
214
214
  </div>
@@ -473,7 +473,7 @@ extensions.</p>
473
473
  </div>
474
474
 
475
475
  <div id="footer">
476
- Generated on Mon Jan 26 15:35:29 2015 by
476
+ Generated on Mon Jan 26 15:35:58 2015 by
477
477
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
478
478
  0.8.7.6 (ruby-2.1.5).
479
479
  </div>
@@ -694,7 +694,7 @@ should be considered a better match than discovering a source code file.</p>
694
694
  </div>
695
695
 
696
696
  <div id="footer">
697
- Generated on Mon Jan 26 15:35:29 2015 by
697
+ Generated on Mon Jan 26 15:35:58 2015 by
698
698
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
699
699
  0.8.7.6 (ruby-2.1.5).
700
700
  </div>
@@ -392,7 +392,7 @@
392
392
  </div>
393
393
 
394
394
  <div id="footer">
395
- Generated on Mon Jan 26 15:35:28 2015 by
395
+ Generated on Mon Jan 26 15:35:58 2015 by
396
396
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
397
397
  0.8.7.6 (ruby-2.1.5).
398
398
  </div>
@@ -326,7 +326,13 @@ Test::NetLinx::Compilable.</p>
326
326
  65
327
327
  66
328
328
  67
329
- 68</pre>
329
+ 68
330
+ 69
331
+ 70
332
+ 71
333
+ 72
334
+ 73
335
+ 74</pre>
330
336
  </td>
331
337
  <td>
332
338
  <pre class="code"><span class="info file"># File 'lib/netlinx/compiler.rb', line 37</span>
@@ -347,7 +353,13 @@ Test::NetLinx::Compilable.</p>
347
353
  <span class='id identifier rubyid_compilable'>compilable</span><span class='period'>.</span><span class='id identifier rubyid_compiler_library_paths'>compiler_library_paths</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
348
354
 
349
355
  <span class='comment'># Run the NetLinx compiler.
350
- </span> <span class='id identifier rubyid_io'>io</span> <span class='op'>=</span> <span class='const'>IO</span><span class='period'>.</span><span class='id identifier rubyid_popen'>popen</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot; \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_target_file'>target_file</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot; \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_include_paths'>include_paths</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot; \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_module_paths'>module_paths</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot; \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_library_paths'>library_paths</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span>
356
+ </span> <span class='comment'># Note: NLRC.exe v2.1 freaks out if empty arguments (&quot;&quot;) are in the command.
357
+ </span> <span class='id identifier rubyid_cmd'>cmd</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_compiler'>compiler</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot; \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_target_file'>target_file</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span>
358
+ <span class='id identifier rubyid_cmd'>cmd</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_include_paths'>include_paths</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_include_paths'>include_paths</span>
359
+ <span class='id identifier rubyid_cmd'>cmd</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_module_paths'>module_paths</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_module_paths'>module_paths</span>
360
+ <span class='id identifier rubyid_cmd'>cmd</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> \&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_library_paths'>library_paths</span><span class='embexpr_end'>}</span><span class='tstring_content'>\&quot;</span><span class='tstring_end'>&quot;</span></span> <span class='kw'>if</span> <span class='id identifier rubyid_library_paths'>library_paths</span>
361
+
362
+ <span class='id identifier rubyid_io'>io</span> <span class='op'>=</span> <span class='const'>IO</span><span class='period'>.</span><span class='id identifier rubyid_popen'>popen</span> <span class='id identifier rubyid_cmd'>cmd</span>
351
363
  <span class='id identifier rubyid_stream'>stream</span> <span class='op'>=</span> <span class='id identifier rubyid_io'>io</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span>
352
364
  <span class='id identifier rubyid_io'>io</span><span class='period'>.</span><span class='id identifier rubyid_close'>close</span>
353
365
 
@@ -373,7 +385,7 @@ Test::NetLinx::Compilable.</p>
373
385
  </div>
374
386
 
375
387
  <div id="footer">
376
- Generated on Mon Jan 26 15:35:28 2015 by
388
+ Generated on Mon Jan 26 15:35:58 2015 by
377
389
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
378
390
  0.8.7.6 (ruby-2.1.5).
379
391
  </div>
@@ -1096,7 +1096,7 @@ compiler_library_paths -- See Compilable interface.</code></pre>
1096
1096
  </div>
1097
1097
 
1098
1098
  <div id="footer">
1099
- Generated on Mon Jan 26 15:35:29 2015 by
1099
+ Generated on Mon Jan 26 15:35:58 2015 by
1100
1100
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1101
1101
  0.8.7.6 (ruby-2.1.5).
1102
1102
  </div>
@@ -126,7 +126,7 @@ See NetLinx::Compiler.</p>
126
126
  </div>
127
127
 
128
128
  <div id="footer">
129
- Generated on Mon Jan 26 15:35:28 2015 by
129
+ Generated on Mon Jan 26 15:35:58 2015 by
130
130
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
131
131
  0.8.7.6 (ruby-2.1.5).
132
132
  </div>
@@ -606,7 +606,7 @@ compiler_module_paths: Array of additional paths for the compiler to find module
606
606
  </div>
607
607
 
608
608
  <div id="footer">
609
- Generated on Mon Jan 26 15:35:28 2015 by
609
+ Generated on Mon Jan 26 15:35:58 2015 by
610
610
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
611
611
  0.8.7.6 (ruby-2.1.5).
612
612
  </div>
@@ -206,7 +206,7 @@
206
206
  </div>
207
207
 
208
208
  <div id="footer">
209
- Generated on Mon Jan 26 15:35:28 2015 by
209
+ Generated on Mon Jan 26 15:35:57 2015 by
210
210
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
211
211
  0.8.7.6 (ruby-2.1.5).
212
212
  </div>
@@ -78,6 +78,29 @@ third-party tools with source code build support, like text editors and
78
78
  IDE&#39;s. Also provided in this library is a Ruby API for invoking the
79
79
  NetLinx compiler.</p>
80
80
 
81
+ <h2 id="label-Upgrade+Notice">Upgrade Notice</h2>
82
+
83
+ <p>AMX has broken NetLinx compilier functionality between NLRC.exe v1.0
84
+ (distributed with NetLinx Studio v3.x) and NLRC.exe v2.1 (distributed with
85
+ NetLinx Studio 4). NLRC.exe v2.x was distributed with NetLinx Studio 4
86
+ versions less than 4.1.1204, and has major problems. It is recommended to
87
+ <em>avoid</em> NLRC.exe v2.x. NLRC.exe v3.x started being distributed in
88
+ NetLinx Studio v4.1.1204 and appears to have fixed the problems when
89
+ compiling include and Duet files. Due to the major changes in the NetLinx
90
+ compiler, it may be necessary to use version 1.x of netlinx-compile when
91
+ working with projects created with NetLinx Studio v3.x or earlier.</p>
92
+ <ul><li>
93
+ <p>Version 1.x of netlinx-compile targets NLRC.exe v1.x.</p>
94
+ </li><li>
95
+ <p>NLRC.exe v2.x is considered broken and is unsupported by netlinx-compile.</p>
96
+ </li><li>
97
+ <p>Version 3.x of netlinx-compile targets NLRC.exe v3.x.</p>
98
+ </li></ul>
99
+
100
+ <p><a
101
+ href="https://github.com/amclain/netlinx-compile/labels/amx%20bug%20-%20can't%20fix">AMX
102
+ NetLinx Compiler Bug List</a></p>
103
+
81
104
  <h2 id="label-Documentation">Documentation</h2>
82
105
 
83
106
  <p><a
@@ -85,7 +108,7 @@ href="https://sourceforge.net/p/netlinx-compile/wiki/Home/">sourceforge.net/p/ne
85
108
  </div></div>
86
109
 
87
110
  <div id="footer">
88
- Generated on Mon Jan 26 15:35:28 2015 by
111
+ Generated on Mon Jan 26 15:35:58 2015 by
89
112
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
90
113
  0.8.7.6 (ruby-2.1.5).
91
114
  </div>
@@ -64,7 +64,7 @@
64
64
  <div id="content"><div id='filecontents'>Copyright 2013 Alex McLain<br/><br/>Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);<br/>you may not use this file except in compliance with the License.<br/>You may obtain a copy of the License at<br/><br/> http://www.apache.org/licenses/LICENSE-2.0<br/><br/>Unless required by applicable law or agreed to in writing, software<br/>distributed under the License is distributed on an &quot;AS IS&quot; BASIS,<br/>WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<br/>See the License for the specific language governing permissions and<br/>limitations under the License.</div></div>
65
65
 
66
66
  <div id="footer">
67
- Generated on Mon Jan 26 15:35:28 2015 by
67
+ Generated on Mon Jan 26 15:35:58 2015 by
68
68
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
69
69
  0.8.7.6 (ruby-2.1.5).
70
70
  </div>
@@ -78,6 +78,29 @@ third-party tools with source code build support, like text editors and
78
78
  IDE&#39;s. Also provided in this library is a Ruby API for invoking the
79
79
  NetLinx compiler.</p>
80
80
 
81
+ <h2 id="label-Upgrade+Notice">Upgrade Notice</h2>
82
+
83
+ <p>AMX has broken NetLinx compilier functionality between NLRC.exe v1.0
84
+ (distributed with NetLinx Studio v3.x) and NLRC.exe v2.1 (distributed with
85
+ NetLinx Studio 4). NLRC.exe v2.x was distributed with NetLinx Studio 4
86
+ versions less than 4.1.1204, and has major problems. It is recommended to
87
+ <em>avoid</em> NLRC.exe v2.x. NLRC.exe v3.x started being distributed in
88
+ NetLinx Studio v4.1.1204 and appears to have fixed the problems when
89
+ compiling include and Duet files. Due to the major changes in the NetLinx
90
+ compiler, it may be necessary to use version 1.x of netlinx-compile when
91
+ working with projects created with NetLinx Studio v3.x or earlier.</p>
92
+ <ul><li>
93
+ <p>Version 1.x of netlinx-compile targets NLRC.exe v1.x.</p>
94
+ </li><li>
95
+ <p>NLRC.exe v2.x is considered broken and is unsupported by netlinx-compile.</p>
96
+ </li><li>
97
+ <p>Version 3.x of netlinx-compile targets NLRC.exe v3.x.</p>
98
+ </li></ul>
99
+
100
+ <p><a
101
+ href="https://github.com/amclain/netlinx-compile/labels/amx%20bug%20-%20can't%20fix">AMX
102
+ NetLinx Compiler Bug List</a></p>
103
+
81
104
  <h2 id="label-Documentation">Documentation</h2>
82
105
 
83
106
  <p><a
@@ -85,7 +108,7 @@ href="https://sourceforge.net/p/netlinx-compile/wiki/Home/">sourceforge.net/p/ne
85
108
  </div></div>
86
109
 
87
110
  <div id="footer">
88
- Generated on Mon Jan 26 15:35:28 2015 by
111
+ Generated on Mon Jan 26 15:35:58 2015 by
89
112
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
90
113
  0.8.7.6 (ruby-2.1.5).
91
114
  </div>
@@ -103,7 +103,7 @@
103
103
  </div>
104
104
 
105
105
  <div id="footer">
106
- Generated on Mon Jan 26 15:35:28 2015 by
106
+ Generated on Mon Jan 26 15:35:58 2015 by
107
107
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
108
108
  0.8.7.6 (ruby-2.1.5).
109
109
  </div>
@@ -50,7 +50,13 @@ module NetLinx
50
50
  compilable.compiler_library_paths.empty?
51
51
 
52
52
  # Run the NetLinx compiler.
53
- io = IO.popen "\"#{compiler}\" \"#{target_file}\" \"#{include_paths}\" \"#{module_paths}\" \"#{library_paths}\""
53
+ # Note: NLRC.exe v2.1 freaks out if empty arguments ("") are in the command.
54
+ cmd = "\"#{compiler}\" \"#{target_file}\""
55
+ cmd += " \"#{include_paths}\"" if include_paths
56
+ cmd += " \"#{module_paths}\"" if module_paths
57
+ cmd += " \"#{library_paths}\"" if library_paths
58
+
59
+ io = IO.popen cmd
54
60
  stream = io.read
55
61
  io.close
56
62
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netlinx-compile
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex McLain