advantage 0.1.0-x86-linux

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.
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ /*====================================================
2
+ *
3
+ * Copyright 2008-2011 iAnywhere Solutions, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ *
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ *
19
+ *
20
+ *====================================================*/
data/README ADDED
@@ -0,0 +1,123 @@
1
+ =Advantage Database Ruby Driver
2
+
3
+ This is a native Advantage Database driver for Ruby. This driver
4
+ is intended to be a base-level library to be used by interface libraries
5
+ such as ActiveRecord.
6
+
7
+ This driver can be used with Advantage Database 11 and later versions.
8
+
9
+ This driver is licensed under the Apache License, Version 2.
10
+
11
+ ==Build Instructions
12
+
13
+ ===Requirements
14
+ * C Compiler
15
+ * Ruby
16
+ * RubyGem Package manager
17
+
18
+
19
+ ===All Platforms
20
+
21
+ To build the library (.so), use:
22
+
23
+ rake
24
+
25
+ To build and install the gem, use:
26
+
27
+ rake gem
28
+ rake install
29
+
30
+ The other rake tasks are
31
+
32
+ rake clean -> Cleans up all temp files (ex *.~)
33
+ rake clobber -> Cleans up all built files (ex *.gem, *.o, *.so)
34
+
35
+ ===Additional Install Notes for Windows
36
+
37
+ The popular One-Click Ruby Installer for Windows (RubyInstaller) is built using
38
+ Microsoft Visual C++ 6.0. Since problems can arise by combining binaries from
39
+ different compilers, we advise you use this compiler.
40
+
41
+ If you want to use a more recent version of the MS C++ compiler, you will need to make a few changes:
42
+
43
+ 1. Open the file: <RUBY DIR>\lib\ruby\1.8\i386-mswin32\config.h, and comment out the first three lines so they look like:
44
+
45
+ //#if _MSC_VER != 1200
46
+ //#error MSC version unmatch
47
+ //#endif
48
+
49
+ This removes the check for C++ Version 6.0
50
+
51
+ 2. Open <tt>rakefile</tt> and set:
52
+
53
+ APPLY_MANIFEST = true
54
+
55
+ This will add the manifest to the compiled binaries.
56
+
57
+ By default, rake will attempt to use Microsoft <tt>nmake</tt> when building under Windows. To use another make program, set:
58
+
59
+ USE_NMAKE_ON_WIN = FALSE
60
+
61
+ ==Running Unit Tests
62
+
63
+ 1. Change to the the <tt>test</tt> directory
64
+
65
+ cd test
66
+
67
+ 2. Create a testing database:
68
+
69
+ Use ARC to create a new database either via the "CTRL-W" in ARC shortcut or using the
70
+ CREATE DATABASE SQLstatement. For example:
71
+ CREATE DATABASE [c:\test\ruby.add];
72
+
73
+ 3. Create the test schema:
74
+
75
+ Open the test.sql within ARC while connected to the test database and execute the script.
76
+
77
+ 5. Run the unit tests:
78
+
79
+ ruby advantage_test.rb
80
+
81
+ ==Sample
82
+
83
+ This script makes a connection, prints <tt>Successful Ruby Connection</tt> to Advantage, then disconnects.
84
+
85
+ # load the Advantage gem
86
+ begin
87
+ require 'rubygems'
88
+ gem 'advantage'
89
+ unless defined? Advantage
90
+ require 'advantage'
91
+ end
92
+ end
93
+
94
+ # create an interface
95
+ api = Advantage::AdvantageInterface.new()
96
+
97
+ # initialize the interface (loads the DLL/SO)
98
+ Advantage::API.ads_initialize_interface( api )
99
+
100
+ # initialize our api object
101
+ api.ads_init()
102
+
103
+ # create a connection
104
+ conn = api.ads_new_connection()
105
+
106
+ # establish a connection
107
+ api.ads_connect(conn, "data source=c:\\test\\ruby.add;user id=adssys;")
108
+
109
+ # execute a query without a result set
110
+ api.ads_execute_immediate(conn, "select 'Successful Ruby Connection' from system.iota;")
111
+
112
+ # disconnect from the database
113
+ api.ads_disconnect(conn)
114
+
115
+ # free the connection resources
116
+ api.ads_free_connection(conn)
117
+
118
+ # free resources the api object uses
119
+ api.ads_fini()
120
+
121
+ # close the interface
122
+ Advantage::API.ads_finalize_interface( api )
123
+
@@ -0,0 +1,186 @@
1
+ #====================================================
2
+ #
3
+ # Copyright 2008-2010 iAnywhere Solutions, Inc.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ #
16
+ # See the License for the specific language governing permissions and
17
+ # limitations under the License.
18
+ #
19
+ #
20
+ #====================================================
21
+
22
+ require 'fileutils'
23
+ require 'rbconfig'
24
+ require 'rake/clean'
25
+ require 'rdoc/task'
26
+ require 'rubygems'
27
+ require 'rubygems/builder'
28
+
29
+ # By default, windows will try to use nmake instead of make. If you are on windows but using
30
+ # a different compiler that uses standard make, set this to false.
31
+ USE_NMAKE_ON_WIN = true
32
+
33
+ # By default on windows, ruby expects to be compiled by Visual Studio C++ 6.0. If you are using
34
+ # a newer version of Visual Studio, you will need to apply a manifest to the dll. To apply the
35
+ # manifest set this to true.
36
+ #EJS was set to false
37
+ APPLY_MANIFEST = false
38
+
39
+ PACKAGE_NAME = "advantage"
40
+ ARCH=RbConfig::CONFIG['arch']
41
+
42
+ Dir.mkdir('lib') unless File.directory?('lib')
43
+ pkg_version = ""
44
+
45
+ library_file = ARCH =~ /darwin/ ? "advantage.bundle" : "advantage.so"
46
+
47
+ # The package version of determined by parsing the c source file. This ensures the version is
48
+ # only ever specified ins a single place.
49
+ File.open(File.join("ext", "advantage.c") ) do |f|
50
+ f.grep( /const char\* VERSION/ ) do |line|
51
+ pkg_version = /\s*const char\* VERSION\s*=\s*["|']([^"']*)["|'];\s*/.match(line)[1]
52
+ end
53
+ end
54
+
55
+ # If we can't determine the version, throw up your hands and exit
56
+ raise RuntimeError, "Could not determine current package version!" if pkg_version.empty?
57
+
58
+ MAKE = (ARCH =~ /win32/ and USE_NMAKE_ON_WIN) ? 'nmake' : 'make'
59
+
60
+ spec = Gem::Specification.new do |spec|
61
+ spec.authors = ["Edgar Sherman"]
62
+ spec.email = 'advantage@sybase.com'
63
+ spec.name = 'advantage'
64
+ spec.summary = 'Advantage library for Ruby'
65
+ spec.description = <<-EOF
66
+ Advantage Driver for Ruby
67
+ EOF
68
+ spec.version = pkg_version
69
+ #spec.autorequire = 'advantage'
70
+ spec.has_rdoc = true
71
+ spec.homepage = 'http://devzone.advantagedatabase.com'
72
+ spec.required_ruby_version = '>= 1.8.6'
73
+ spec.require_paths = ['lib']
74
+ spec.test_file = 'test/advantage_test.rb'
75
+ spec.rdoc_options << '--title' << 'Advantage Ruby Driver' <<
76
+ '--main' << 'README' <<
77
+ '--line-numbers'
78
+ spec.extra_rdoc_files = ['README', 'LICENSE', 'ext/advantage.c']
79
+ end
80
+
81
+ # The default task is to build the library (.dll or .so)
82
+ desc "Build the library"
83
+ task :default => [File.join("lib", library_file)]
84
+
85
+ # Builds the binary gem for this platform
86
+ desc "Build the gem"
87
+ task :gem => ["advantage-#{pkg_version}-#{spec.platform}.gem"]
88
+
89
+ file "advantage-#{pkg_version}-#{spec.platform}.gem" => ["Rakefile",
90
+ "test/test.sql",
91
+ "test/advantage_test.rb",
92
+ "README",
93
+ "LICENSE",
94
+ File.join("lib", library_file)] do
95
+ # Get the updated list of files to include in the gem
96
+ spec.files = Dir['ext/**/*'] + Dir['lib/**/*'] + Dir['test/**/*'] + Dir['LICENSE'] + Dir['README'] + Dir['Rakefile']
97
+ # Set the gem to be platform specific since it includes compiled binaries
98
+ spec.platform = Gem::Platform::CURRENT
99
+ #spec.extensions = ''
100
+ Gem::Builder.new(spec).build
101
+ end
102
+
103
+ # Builds the source gem for any platform
104
+ desc "Build the source gem"
105
+ task :source_gem => ["advantage-#{pkg_version}.gem"]
106
+
107
+ file "advantage-#{pkg_version}.gem" => ["Rakefile",
108
+ "test/test.sql",
109
+ "test/advantage_test.rb",
110
+ "README",
111
+ "LICENSE"] do
112
+ # Get the updated list of files to include in the gem
113
+ spec.files = Dir['ext/**/*'] + Dir['lib/**/*'] + Dir['test/**/*'] + Dir['LICENSE'] + Dir['README'] + Dir['Rakefile']
114
+ # Since this contains no compilked binaries, set it to be platform RUBY
115
+ spec.extensions = 'ext/extconf.rb'
116
+ Gem::Builder.new(spec).build
117
+ end
118
+
119
+ file File.join("lib", library_file) => [File.join("ext", library_file)] do
120
+ FileUtils.copy(File.join("ext", library_file), "lib")
121
+ end
122
+
123
+ file File.join("ext", library_file) => ["ext/advantage.c"] do
124
+ sh "cd ext && ruby extconf.rb"
125
+ sh "cd ext && #{MAKE}"
126
+ sh "cd ext && mt -outputresource:advantage.so;2 -manifest advantage.so.manifest" if APPLY_MANIFEST
127
+ end
128
+
129
+ desc "Install the gem"
130
+ task :install => [:gem] do
131
+ sh "gem install advantage-#{pkg_version}-#{spec.platform}.gem"
132
+ end
133
+
134
+ # This builds the distributables. On windows it builds a platform specific gem, a source gem, and a souce zip archive.
135
+ # On other platforms this builds a platform specific gem, a source gem, and a source tar.gz archive.
136
+ desc "Build distributables (src zip, src tar.gz, gem)"
137
+ task :dist do |t|
138
+ puts "Cleaning Build Environment..."
139
+ Rake.application['clobber'].invoke
140
+
141
+ files = Dir.glob('*')
142
+
143
+ puts "Creating #{File.join('build', PACKAGE_NAME)}-#{pkg_version} directory..."
144
+ FileUtils.mkdir_p "#{File.join('build', PACKAGE_NAME)}-#{pkg_version}"
145
+
146
+ puts "Copying files to #{File.join('build', PACKAGE_NAME)}-#{pkg_version}..."
147
+ FileUtils.cp_r files, "#{File.join('build', PACKAGE_NAME)}-#{pkg_version}"
148
+
149
+ if( ARCH =~ /win32/ ) then
150
+ system "attrib -R #{File.join('build', PACKAGE_NAME)}-#{pkg_version} /S"
151
+ else
152
+ system "find #{File.join('build', PACKAGE_NAME)}-#{pkg_version} -type d -exec chmod 755 {} \\;"
153
+ system "find #{File.join('build', PACKAGE_NAME)}-#{pkg_version} -type f -exec chmod 644 {} \\;"
154
+ end
155
+
156
+ if( ARCH =~ /win32/ ) then
157
+ puts "Creating #{File.join('build', PACKAGE_NAME)}-#{pkg_version}.zip..."
158
+ system "cd build && zip -q -r #{PACKAGE_NAME}-#{pkg_version}.zip #{PACKAGE_NAME}-#{pkg_version}"
159
+ else
160
+ puts "Creating #{File.join('build', PACKAGE_NAME)}-#{pkg_version}.tar..."
161
+ system "tar cf #{File.join('build', PACKAGE_NAME)}-#{pkg_version}.tar -C build #{PACKAGE_NAME}-#{pkg_version}"
162
+
163
+ puts "GZipping to create #{File.join('build', PACKAGE_NAME, PACKAGE_NAME)}-#{pkg_version}.tar.gz..."
164
+ system "gzip #{File.join('build', PACKAGE_NAME)}-#{pkg_version}.tar"
165
+ end
166
+
167
+ puts "Building GEM source distributable..."
168
+ Rake.application['source_gem'].invoke
169
+
170
+ puts "Copying source GEM to #{File.join('build', PACKAGE_NAME)}-#{pkg_version}.gem..."
171
+ FileUtils.cp "#{PACKAGE_NAME}-#{pkg_version}.gem", "build"
172
+
173
+ puts "Building GEM binary distributable..."
174
+ Rake.application['gem'].invoke
175
+
176
+ puts "Copying binary GEM to #{File.join('build', PACKAGE_NAME)}-#{pkg_version}-#{spec.platform}.gem..."
177
+ FileUtils.cp "#{PACKAGE_NAME}-#{pkg_version}-#{spec.platform}.gem", "build"
178
+ end
179
+
180
+ RDoc::Task.new do |rd|
181
+ rd.title = "Advantage Ruby Driver"
182
+ rd.main = "README"
183
+ rd.rdoc_files.include('README', 'LICENSE', 'ext/advantage.c')
184
+ end
185
+
186
+ CLOBBER.include("advantage-#{pkg_version}-#{spec.platform}.gem", "advantage-#{pkg_version}.gem", "lib/*", "ext/*.obj", "ext/*.def", "ext/*.so", "ext/*.bundle", "ext/*.log", "ext/*.exp", "ext/*.lib", "ext/*.pdb", "ext/Makefile", "ext/*.so.manifest", "ext/*.o", "build/**/*", "build")
@@ -0,0 +1,213 @@
1
+
2
+ SHELL = /bin/sh
3
+
4
+ # V=0 quiet, V=1 verbose. other values don't work.
5
+ V = 0
6
+ Q1 = $(V:1=)
7
+ Q = $(Q1:0=@)
8
+ n=$(NULLCMD)
9
+ ECHO1 = $(V:1=@$n)
10
+ ECHO = $(ECHO1:0=@echo)
11
+
12
+ #### Start of system configuration section. ####
13
+
14
+ srcdir = .
15
+ topdir = /home/ADS/edgars/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1
16
+ hdrdir = /home/ADS/edgars/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1
17
+ arch_hdrdir = /home/ADS/edgars/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/$(arch)
18
+ VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
19
+ prefix = $(DESTDIR)/home/ADS/edgars/.rvm/rubies/ruby-1.9.3-p125
20
+ rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
21
+ exec_prefix = $(prefix)
22
+ vendorhdrdir = $(rubyhdrdir)/vendor_ruby
23
+ sitehdrdir = $(rubyhdrdir)/site_ruby
24
+ rubyhdrdir = $(includedir)/$(RUBY_BASE_NAME)-$(ruby_version)
25
+ vendordir = $(rubylibprefix)/vendor_ruby
26
+ sitedir = $(rubylibprefix)/site_ruby
27
+ ridir = $(datarootdir)/$(RI_BASE_NAME)
28
+ mandir = $(datarootdir)/man
29
+ localedir = $(datarootdir)/locale
30
+ libdir = $(exec_prefix)/lib
31
+ psdir = $(docdir)
32
+ pdfdir = $(docdir)
33
+ dvidir = $(docdir)
34
+ htmldir = $(docdir)
35
+ infodir = $(datarootdir)/info
36
+ docdir = $(datarootdir)/doc/$(PACKAGE)
37
+ oldincludedir = $(DESTDIR)/usr/include
38
+ includedir = $(prefix)/include
39
+ localstatedir = $(prefix)/var
40
+ sharedstatedir = $(prefix)/com
41
+ sysconfdir = $(prefix)/etc
42
+ datadir = $(datarootdir)
43
+ datarootdir = $(prefix)/share
44
+ libexecdir = $(exec_prefix)/libexec
45
+ sbindir = $(exec_prefix)/sbin
46
+ bindir = $(exec_prefix)/bin
47
+ rubylibdir = $(rubylibprefix)/$(ruby_version)
48
+ archdir = $(rubylibdir)/$(arch)
49
+ sitelibdir = $(sitedir)/$(ruby_version)
50
+ sitearchdir = $(sitelibdir)/$(sitearch)
51
+ vendorlibdir = $(vendordir)/$(ruby_version)
52
+ vendorarchdir = $(vendorlibdir)/$(sitearch)
53
+
54
+ NULLCMD = :
55
+
56
+ CC = gcc
57
+ CXX = g++
58
+ LIBRUBY = $(LIBRUBY_SO)
59
+ LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
60
+ LIBRUBYARG_SHARED = -Wl,-R -Wl,$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)
61
+ LIBRUBYARG_STATIC = -Wl,-R -Wl,$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)-static
62
+ OUTFLAG = -o
63
+ COUTFLAG = -o
64
+
65
+ RUBY_EXTCONF_H =
66
+ cflags = $(optflags) $(debugflags) $(warnflags)
67
+ optflags = -O3
68
+ debugflags = -ggdb
69
+ warnflags = -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration
70
+ CFLAGS = -fPIC $(cflags) -fPIC $(ARCH_FLAG)
71
+ INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
72
+ DEFS = -D_FILE_OFFSET_BITS=64
73
+ CPPFLAGS = -I/home/ADS/edgars/.rvm/usr/include $(DEFS) $(cppflags)
74
+ CXXFLAGS = $(CFLAGS) $(cxxflags)
75
+ ldflags = -L. -rdynamic -Wl,-export-dynamic
76
+ dldflags =
77
+ ARCH_FLAG =
78
+ DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
79
+ LDSHARED = $(CC) -shared
80
+ LDSHAREDXX = $(CXX) -shared
81
+ AR = ar
82
+ EXEEXT =
83
+
84
+ RUBY_BASE_NAME = ruby
85
+ RUBY_INSTALL_NAME = ruby
86
+ RUBY_SO_NAME = ruby
87
+ arch = i686-linux
88
+ sitearch = $(arch)
89
+ ruby_version = 1.9.1
90
+ ruby = /home/ADS/edgars/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
91
+ RUBY = $(ruby)
92
+ RM = rm -f
93
+ RM_RF = $(RUBY) -run -e rm -- -rf
94
+ RMDIRS = rmdir --ignore-fail-on-non-empty -p
95
+ MAKEDIRS = /bin/mkdir -p
96
+ INSTALL = /usr/bin/install -c
97
+ INSTALL_PROG = $(INSTALL) -m 0755
98
+ INSTALL_DATA = $(INSTALL) -m 644
99
+ COPY = cp
100
+
101
+ #### End of system configuration section. ####
102
+
103
+ preload =
104
+
105
+ libpath = . $(libdir) /home/ADS/edgars/.rvm/usr/lib
106
+ LIBPATH = -L. -L$(libdir) -Wl,-R$(libdir) -L/home/ADS/edgars/.rvm/usr/lib -Wl,-R/home/ADS/edgars/.rvm/usr/lib
107
+ DEFFILE =
108
+
109
+ CLEANFILES = mkmf.log
110
+ DISTCLEANFILES =
111
+ DISTCLEANDIRS =
112
+
113
+ extout =
114
+ extout_prefix =
115
+ target_prefix =
116
+ LOCAL_LIBS =
117
+ LIBS = $(LIBRUBYARG_SHARED) -lpthread -lrt -ldl -lcrypt -lm -lc
118
+ SRCS = advantage.c adscapidll.c
119
+ OBJS = advantage.o adscapidll.o
120
+ TARGET = advantage
121
+ DLLIB = $(TARGET).so
122
+ EXTSTATIC =
123
+ STATIC_LIB =
124
+
125
+ BINDIR = $(bindir)
126
+ RUBYCOMMONDIR = $(sitedir)$(target_prefix)
127
+ RUBYLIBDIR = $(sitelibdir)$(target_prefix)
128
+ RUBYARCHDIR = $(sitearchdir)$(target_prefix)
129
+ HDRDIR = $(rubyhdrdir)/ruby$(target_prefix)
130
+ ARCHHDRDIR = $(rubyhdrdir)/$(arch)/ruby$(target_prefix)
131
+
132
+ TARGET_SO = $(DLLIB)
133
+ CLEANLIBS = $(TARGET).so
134
+ CLEANOBJS = *.o *.bak
135
+
136
+ all: $(DLLIB)
137
+ static: $(STATIC_LIB)
138
+ .PHONY: all install static install-so install-rb
139
+ .PHONY: clean clean-so clean-rb
140
+
141
+ clean-rb-default::
142
+ clean-rb::
143
+ clean-so::
144
+ clean: clean-so clean-rb-default clean-rb
145
+ @-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
146
+
147
+ distclean-rb-default::
148
+ distclean-rb::
149
+ distclean-so::
150
+ distclean: clean distclean-so distclean-rb-default distclean-rb
151
+ @-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
152
+ @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
153
+ @-$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true
154
+
155
+ realclean: distclean
156
+ install: install-so install-rb
157
+
158
+ install-so: $(RUBYARCHDIR)
159
+ install-so: $(RUBYARCHDIR)/$(DLLIB)
160
+ $(RUBYARCHDIR)/$(DLLIB): $(DLLIB)
161
+ @-$(MAKEDIRS) $(@D)
162
+ $(INSTALL_PROG) $(DLLIB) $(@D)
163
+ install-rb: pre-install-rb install-rb-default
164
+ install-rb-default: pre-install-rb-default
165
+ pre-install-rb: Makefile
166
+ pre-install-rb-default: Makefile
167
+ pre-install-rb-default:
168
+ $(ECHO) installing default advantage libraries
169
+ $(RUBYARCHDIR):
170
+ $(Q) $(MAKEDIRS) $@
171
+
172
+ site-install: site-install-so site-install-rb
173
+ site-install-so: install-so
174
+ site-install-rb: install-rb
175
+
176
+ .SUFFIXES: .c .m .cc .mm .cxx .cpp .C .o
177
+
178
+ .cc.o:
179
+ $(ECHO) compiling $(<)
180
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
181
+
182
+ .mm.o:
183
+ $(ECHO) compiling $(<)
184
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
185
+
186
+ .cxx.o:
187
+ $(ECHO) compiling $(<)
188
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
189
+
190
+ .cpp.o:
191
+ $(ECHO) compiling $(<)
192
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
193
+
194
+ .C.o:
195
+ $(ECHO) compiling $(<)
196
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
197
+
198
+ .c.o:
199
+ $(ECHO) compiling $(<)
200
+ $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
201
+
202
+ .m.o:
203
+ $(ECHO) compiling $(<)
204
+ $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
205
+
206
+ $(DLLIB): $(OBJS) Makefile
207
+ $(ECHO) linking shared-object $(DLLIB)
208
+ @-$(RM) $(@)
209
+ $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
210
+
211
+
212
+
213
+ $(OBJS): $(hdrdir)/ruby.h $(hdrdir)/ruby/defines.h $(arch_hdrdir)/ruby/config.h