Changeset: 2ce789c8d33f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2ce789c8d33f
Modified Files:
buildtools/autogen/autogen/msc.py
clients/NT/rules.msc
Branch: default
Log Message:
Add support for building and installing gems on Windows.
diffs (65 lines):
diff -r 21a58d022f81 -r 2ce789c8d33f buildtools/autogen/autogen/msc.py
--- a/buildtools/autogen/autogen/msc.py Thu Jan 06 14:50:36 2011 +0100
+++ b/buildtools/autogen/autogen/msc.py Thu Jan 06 17:18:19 2011 +0100
@@ -1029,6 +1029,38 @@
+ msc_add_srcdir(i, msc, " -I")
fd.write("INCLUDES = " + incs + "\n")
+def msc_gem(fd, var, gem, msc):
+ gemre = re.compile(r'\.files *= *\[ *(.*[^ ]) *\]')
+ rd = 'RUBY_DIR'
+ if gem.has_key('DIR'):
+ rd = gem['DIR'][0]
+ rd = msc_translate_dir(rd, msc)
+ fd.write('!IF defined(HAVE_RUBYGEM)\n')
+ for f in gem['FILES']:
+ msc['SCRIPTS'].append(f[:-4])
+ srcs = map(lambda x: x.strip('" '),
+ gemre.search(open(os.path.join(msc['cwd'],
f)).read()).group(1).split(', '))
+ srcs.append(f)
+ fd.write('%s: %s\n' % (f[:-4], ' '.join(srcs)))
+ fd.write('\tgem build %s\n' % f)
+ for src in srcs:
+ src = src.replace('/', '\\')
+ fd.write('%s: "$(SRCDIR)\\%s"\n' % (src, src))
+ if '\\' in src:
+ d = src[:src.rfind('\\')]
+ fd.write('\tif not exist "%s" $(MKDIR) "%s"\n' % (d, d))
+ fd.write('\t$(INSTALL) "$(SRCDIR)\\%s" "%s"\n' % (src, src))
+ msc['INSTALL'][f] = f, '', '', '', 'defined(HAVE_RUBYGEM)'
+ fd.write('install_%s: "%s" "%s"\n' % (f, f[:-4], rd))
+ fd.write('\tgem install "%s" --local --install-dir "%s" --force
--rdoc\n' % (f[:-4], rd))
+ fd.write('"%s":\n' % rd)
+ fd.write('\tif not exist "%s" $(MKDIR) "%s"\n' % (rd, rd))
+ fd.write('!ELSE\n')
+ for f in gem['FILES']:
+ fd.write('%s:\n' % f[:-4])
+ fd.write('install_%s:\n' % f)
+ fd.write('!ENDIF\n')
+
callantno = 0
def msc_ant(fd, var, ant, msc):
global callantno
@@ -1099,6 +1131,7 @@
'largeTOC_SHARED_MODS': msc_mods_to_libs,
'HEADERS': msc_headers,
'ANT': msc_ant,
+ 'GEM': msc_gem,
}
def output(tree, cwd, topdir):
diff -r 21a58d022f81 -r 2ce789c8d33f clients/NT/rules.msc
--- a/clients/NT/rules.msc Thu Jan 06 14:50:36 2011 +0100
+++ b/clients/NT/rules.msc Thu Jan 06 17:18:19 2011 +0100
@@ -35,6 +35,11 @@
monetdbtools_CFLAGS=-I"$(MONETDB_INCLUDEDIR)\common"
monetdbtools_LIBS=/libpath:"$(MONETDB_PREFIX)\lib" libstream.lib libmutils.lib
+!IFNDEF RUBYDIR
+RUBYDIR = C:\Ruby192
+!ENDIF
+RUBY_DIR=lib/ruby/gems/1.9.1
+
pkg = clients
CONFIG_H=clients_config.h
VERSION=1.41.0
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list