From 6af625169c87ac7eda0faf1c1aa5603d3e541bb4 Mon Sep 17 00:00:00 2001 From: Marian Theisen Date: Sun, 20 Feb 2011 15:38:07 +0100 Subject: [PATCH] ext gem conf --- ext/.gitignore | 4 + ext/Makefile | 157 ------------------ ext/conftest.dSYM/Contents/Info.plist | 20 --- .../Contents/Resources/DWARF/conftest | Bin 9090 -> 0 bytes ext/extconf.rb | 39 ----- ext/ruby_cpickle.bundle | Bin 26320 -> 0 bytes ext/ruby_cpickle.c | 14 +- ruby_pickle.gemspec | 3 +- spec/pickler/basic_types_spec.rb | 2 +- 9 files changed, 14 insertions(+), 225 deletions(-) create mode 100644 ext/.gitignore delete mode 100644 ext/Makefile delete mode 100644 ext/conftest.dSYM/Contents/Info.plist delete mode 100644 ext/conftest.dSYM/Contents/Resources/DWARF/conftest delete mode 100755 ext/ruby_cpickle.bundle diff --git a/ext/.gitignore b/ext/.gitignore new file mode 100644 index 0000000..dc53679 --- /dev/null +++ b/ext/.gitignore @@ -0,0 +1,4 @@ +Makefile +.bundle +.o +.so \ No newline at end of file diff --git a/ext/Makefile b/ext/Makefile deleted file mode 100644 index 29d8d9b..0000000 --- a/ext/Makefile +++ /dev/null @@ -1,157 +0,0 @@ - -SHELL = /bin/sh - -#### Start of system configuration section. #### - -srcdir = . -topdir = /Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i686-darwin10.4.0 -hdrdir = $(topdir) -VPATH = $(srcdir):$(topdir):$(hdrdir) -exec_prefix = $(prefix) -prefix = $(DESTDIR)/Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302 -sharedstatedir = $(prefix)/com -mandir = $(datarootdir)/man -psdir = $(docdir) -oldincludedir = $(DESTDIR)/usr/include -localedir = $(datarootdir)/locale -bindir = $(exec_prefix)/bin -libexecdir = $(exec_prefix)/libexec -sitedir = $(libdir)/ruby/site_ruby -htmldir = $(docdir) -vendorarchdir = $(vendorlibdir)/$(sitearch) -includedir = $(prefix)/include -infodir = $(datarootdir)/info -vendorlibdir = $(vendordir)/$(ruby_version) -sysconfdir = $(prefix)/etc -libdir = $(exec_prefix)/lib -sbindir = $(exec_prefix)/sbin -rubylibdir = $(libdir)/ruby/$(ruby_version) -docdir = $(datarootdir)/doc/$(PACKAGE) -dvidir = $(docdir) -vendordir = $(libdir)/ruby/vendor_ruby -datarootdir = $(prefix)/share -pdfdir = $(docdir) -archdir = $(rubylibdir)/$(arch) -sitearchdir = $(sitelibdir)/$(sitearch) -datadir = $(datarootdir) -localstatedir = $(prefix)/var -sitelibdir = $(sitedir)/$(ruby_version) - -CC = gcc -LIBRUBY = $(LIBRUBY_SO) -LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a -LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME) -LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static - -RUBY_EXTCONF_H = -CFLAGS = -fno-common -g -O2 -fno-common -pipe -fno-common $(cflags) -INCFLAGS = -I. -I. -I/Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i686-darwin10.4.0 -I. -DEFS = -CPPFLAGS = -I/opt/local/include -I/usr/local/include -I/Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302/include -I/usr/include -I/usr/include/libxml2 -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -CXXFLAGS = $(CFLAGS) -ldflags = -L. -dldflags = -archflag = -DLDFLAGS = $(ldflags) $(dldflags) $(archflag) -LDSHARED = cc -dynamic -bundle -undefined suppress -flat_namespace -AR = ar -EXEEXT = - -RUBY_INSTALL_NAME = ruby -RUBY_SO_NAME = ruby -arch = i686-darwin10.4.0 -sitearch = i686-darwin10.4.0 -ruby_version = 1.8 -ruby = /Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302/bin/ruby -RUBY = $(ruby) -RM = rm -f -MAKEDIRS = mkdir -p -INSTALL = /usr/bin/install -c -INSTALL_PROG = $(INSTALL) -m 0755 -INSTALL_DATA = $(INSTALL) -m 644 -COPY = cp - -#### End of system configuration section. #### - -preload = - -libpath = . $(libdir) /opt/local/lib /usr/local/lib /Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302/lib /usr/lib -LIBPATH = -L. -L$(libdir) -L/opt/local/lib -L/usr/local/lib -L/Users/mariantheisen/.rvm/rubies/ruby-1.8.7-p302/lib -L/usr/lib -DEFFILE = - -CLEANFILES = mkmf.log -DISTCLEANFILES = - -extout = -extout_prefix = -target_prefix = -LOCAL_LIBS = -LIBS = $(LIBRUBYARG_SHARED) -liconv -ldl -lobjc -SRCS = c_stack.c ruby_cpickle.c util.c virtual_machine.c -OBJS = c_stack.o ruby_cpickle.o util.o virtual_machine.o -TARGET = ruby_cpickle -DLLIB = $(TARGET).bundle -EXTSTATIC = -STATIC_LIB = - -BINDIR = $(bindir) -RUBYCOMMONDIR = $(sitedir)$(target_prefix) -RUBYLIBDIR = $(sitelibdir)$(target_prefix) -RUBYARCHDIR = $(sitearchdir)$(target_prefix) - -TARGET_SO = $(DLLIB) -CLEANLIBS = $(TARGET).bundle $(TARGET).il? $(TARGET).tds $(TARGET).map -CLEANOBJS = *.o *.a *.s[ol] *.pdb *.exp *.bak - -all: $(DLLIB) -static: $(STATIC_LIB) - -clean: - @-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) - -distclean: clean - @-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log - @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES) - -realclean: distclean -install: install-so install-rb - -install-so: $(RUBYARCHDIR) -install-so: $(RUBYARCHDIR)/$(DLLIB) -$(RUBYARCHDIR)/$(DLLIB): $(DLLIB) - $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR) -install-rb: pre-install-rb install-rb-default -install-rb-default: pre-install-rb-default -pre-install-rb: Makefile -pre-install-rb-default: Makefile -$(RUBYARCHDIR): - $(MAKEDIRS) $@ - -site-install: site-install-so site-install-rb -site-install-so: install-so -site-install-rb: install-rb - -.SUFFIXES: .c .m .cc .cxx .cpp .C .o - -.cc.o: - $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $< - -.cxx.o: - $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $< - -.cpp.o: - $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $< - -.C.o: - $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) -c $< - -.c.o: - $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) -c $< - -$(DLLIB): $(OBJS) Makefile - @-$(RM) $@ - $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS) - - - -$(OBJS): ruby.h defines.h diff --git a/ext/conftest.dSYM/Contents/Info.plist b/ext/conftest.dSYM/Contents/Info.plist deleted file mode 100644 index b0c240a..0000000 --- a/ext/conftest.dSYM/Contents/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.conftest - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/ext/conftest.dSYM/Contents/Resources/DWARF/conftest b/ext/conftest.dSYM/Contents/Resources/DWARF/conftest deleted file mode 100644 index 8b844eb1120835fed257e3f95fdf934ecbddfa62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9090 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 A82|tP diff --git a/ext/ruby_cpickle.c b/ext/ruby_cpickle.c index b963ca7..dc0d189 100644 --- a/ext/ruby_cpickle.c +++ b/ext/ruby_cpickle.c @@ -2,7 +2,6 @@ #include #include #include "util.h" -#include // Array to hold function pointers to all operations static void(*dispatch[256])(VirtualMachine*, VALUE) = {}; @@ -10,14 +9,17 @@ static void(*dispatch[256])(VirtualMachine*, VALUE) = {}; // Hold a global Marker static VALUE Marker; -static iconv_t iconv_cd; - uchar read_one(VALUE stream) { VALUE byte = rb_funcall(stream, meth_read, 0); return NUM2CHR(byte); } +VALUE pack_to_utf8(VALUE ary) { + VALUE unicode = rb_str_new2("U*"); + return rb_funcall(ary, meth_pack, 1, unicode); +} + VALUE read_to_nl(VALUE stream) { VALUE string = rb_ary_new(); @@ -28,7 +30,7 @@ VALUE read_to_nl(VALUE stream) { buf = read_one(stream); } - string = rb_funcall(string, meth_pack, 1, rb_str_new2("U*")); + string = pack_to_utf8(string); return string; } @@ -153,7 +155,6 @@ static void dispatcher(VirtualMachine *vm, uchar op_code, VALUE stream) { } static VALUE reader(VALUE self) { - iconv_cd = iconv_open("UTF-8", "UTF-16"); VALUE stream = rb_iv_get(self, "@stream"); rb_funcall(stream, meth_rewind, 0); @@ -167,7 +168,6 @@ static VALUE reader(VALUE self) { } VALUE retval = vmpop(vm); - iconv_close(iconv_cd); // free_vm(vm); return retval; } @@ -463,7 +463,7 @@ static void load_unicode(VirtualMachine *vm, VALUE stream) { buf = read_one(stream); } - VALUE string = rb_funcall(bytes, meth_pack, 1, rb_str_new2("U*")); + VALUE string = pack_to_utf8(bytes); vmpush(vm, string); } diff --git a/ruby_pickle.gemspec b/ruby_pickle.gemspec index e49c6b3..6192c84 100644 --- a/ruby_pickle.gemspec +++ b/ruby_pickle.gemspec @@ -18,7 +18,8 @@ Gem::Specification.new do |s| s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n") s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } s.require_paths = ["lib"] - + s.extensions << 'ext/extconf.rb' + s.add_dependency "activesupport", ">= 3.0.0" s.add_development_dependency 'yard' diff --git a/spec/pickler/basic_types_spec.rb b/spec/pickler/basic_types_spec.rb index bb19e04..5b82406 100644 --- a/spec/pickler/basic_types_spec.rb +++ b/spec/pickler/basic_types_spec.rb @@ -1,7 +1,7 @@ require 'spec_helper' module RubyPickle - describe Unpickler do + describe Pickler do include SpecHelper it 'pickles Integers' do