rmultimarkdown 6.4.0.4 → 6.7.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 +5 -5
- data/Rakefile +7 -13
- data/ext/Makefile +67 -55
- data/ext/extconf.rb +7 -5
- data/ext/mmd/aho-corasick.c +8 -8
- data/ext/mmd/aho-corasick.h +3 -3
- data/ext/mmd/argtable3.c +6537 -0
- data/ext/mmd/argtable3.h +273 -0
- data/ext/mmd/beamer.c +12 -1
- data/ext/mmd/char.c +120 -27
- data/ext/mmd/char.h +23 -23
- data/ext/mmd/critic_markup.c +7 -6
- data/ext/mmd/d_string.c +88 -32
- data/ext/mmd/{include/d_string.h → d_string.h} +50 -38
- data/ext/mmd/epub.c +36 -12
- data/ext/mmd/epub.h +2 -2
- data/ext/mmd/file.c +50 -40
- data/ext/mmd/file.h +2 -2
- data/ext/mmd/html.c +164 -99
- data/ext/mmd/html.h +3 -2
- data/ext/mmd/i18n.h +15 -11
- data/ext/mmd/itmz-lexer.c +16978 -0
- data/ext/mmd/itmz-lexer.h +132 -0
- data/ext/mmd/itmz-parser.c +1189 -0
- data/ext/mmd/itmz-parser.h +11 -0
- data/ext/mmd/itmz-reader.c +388 -0
- data/ext/mmd/itmz-reader.h +111 -0
- data/ext/mmd/itmz.c +567 -0
- data/ext/mmd/itmz.h +117 -0
- data/ext/mmd/latex.c +93 -41
- data/ext/mmd/lexer.c +3506 -2774
- data/ext/mmd/{include/libMultiMarkdown.h → libMultiMarkdown.h} +49 -2
- data/ext/mmd/main.c +612 -0
- data/ext/mmd/memoir.c +4 -1
- data/ext/mmd/miniz.c +6905 -6680
- data/ext/mmd/miniz.h +456 -476
- data/ext/mmd/mmd.c +399 -94
- data/ext/mmd/mmd.h +25 -25
- data/ext/mmd/object_pool.h +3 -3
- data/ext/mmd/opendocument-content.c +137 -69
- data/ext/mmd/opendocument-content.h +2 -2
- data/ext/mmd/opendocument.c +35 -14
- data/ext/mmd/opendocument.h +2 -2
- data/ext/mmd/opml-lexer.c +259 -637
- data/ext/mmd/opml-lexer.h +1 -17
- data/ext/mmd/opml-parser.c +194 -188
- data/ext/mmd/opml-reader.c +72 -142
- data/ext/mmd/opml-reader.h +1 -1
- data/ext/mmd/opml.c +13 -13
- data/ext/mmd/opml.h +1 -1
- data/ext/mmd/parser.c +1623 -1244
- data/ext/mmd/rng.c +8 -3
- data/ext/mmd/scanners.c +66625 -103198
- data/ext/mmd/scanners.h +1 -0
- data/ext/mmd/stack.c +62 -20
- data/ext/mmd/stack.h +10 -21
- data/ext/mmd/textbundle.c +23 -7
- data/ext/mmd/textbundle.h +2 -2
- data/ext/mmd/token.c +42 -16
- data/ext/mmd/{include/token.h → token.h} +22 -8
- data/ext/mmd/token_pairs.c +0 -16
- data/ext/mmd/transclude.c +6 -2
- data/ext/mmd/uthash.h +745 -745
- data/ext/mmd/version.h +8 -8
- data/ext/mmd/writer.c +225 -63
- data/ext/mmd/writer.h +50 -36
- data/ext/mmd/xml.c +855 -0
- data/ext/mmd/xml.h +134 -0
- data/ext/mmd/zip.c +71 -4
- data/ext/mmd/zip.h +7 -1
- data/ext/ruby_multi_markdown.c +9 -18
- data/lib/multi_markdown/version.rb +1 -1
- data/lib/multi_markdown.bundle +0 -0
- data/rmultimarkdown.gemspec +0 -2
- metadata +22 -28
- data/ext/mmd/char_lookup.c +0 -212
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: '082f8def907eba9f90a7ba7dc44c18adf0fd84c661d22cb64d3e79e8d1289a07'
|
|
4
|
+
data.tar.gz: 6848474690afdd2f99a96db3e552180c23a584a1509f66a39a7e0aac5432fa8b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5b4dc5b9763f3ba60de2abcd8d3c6ec14368579e4cc492d43a37adb036a9dde4fbe0f00893e462ff6418aa9f97d020dd659e6ea93d09232ca758289c8004fed2
|
|
7
|
+
data.tar.gz: 4db801524d1df6639793e91942ef8ddf8de2c68112c3946d087d9ab8d0aa6d8eb83e3d129380f52dc358177a254295342e040ae4bf95f22a53f1a2d4333c3d34
|
data/Rakefile
CHANGED
|
@@ -2,6 +2,7 @@ require 'rake/clean'
|
|
|
2
2
|
require 'rdoc/task'
|
|
3
3
|
require 'bundler'
|
|
4
4
|
require 'fileutils'
|
|
5
|
+
require 'rake/testtask'
|
|
5
6
|
|
|
6
7
|
Bundler::GemHelper.install_tasks
|
|
7
8
|
|
|
@@ -26,23 +27,16 @@ namespace "MultiMarkdown-6" do
|
|
|
26
27
|
sh 'make' # creates build/version.h
|
|
27
28
|
|
|
28
29
|
# Copy all c and h files to MMD_DIR which will be released in the gem
|
|
29
|
-
['
|
|
30
|
+
['src', 'build'].each do |dir|
|
|
30
31
|
chdir(dir) do
|
|
31
32
|
Dir.glob('{.,include}/*.{h,c}').each do |s|
|
|
32
|
-
next if s =~ /template/
|
|
33
|
+
next if s =~ /template|char_lookup/
|
|
33
34
|
dest = "#{MMD_DIR}/#{File.dirname(s)}"
|
|
34
35
|
FileUtils.mkdir_p(dest)
|
|
35
36
|
FileUtils.cp(s, dest)
|
|
36
37
|
end
|
|
37
38
|
end
|
|
38
39
|
end
|
|
39
|
-
|
|
40
|
-
# We have to disable the ObjectPool. see include/token.h
|
|
41
|
-
token_h_file = "#{MMD_DIR}/include/token.h"
|
|
42
|
-
IO.write(token_h_file, (File.open(token_h_file) { |f|
|
|
43
|
-
f.read.gsub(/#define kUseObjectPool/, "#define kUseObjectPoolDisabled")
|
|
44
|
-
}))
|
|
45
|
-
|
|
46
40
|
end
|
|
47
41
|
end
|
|
48
42
|
|
|
@@ -78,10 +72,10 @@ task :test => [ 'test:unit', 'test:conformance' ]
|
|
|
78
72
|
namespace :test do
|
|
79
73
|
|
|
80
74
|
desc 'Run unit tests'
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
75
|
+
Rake::TestTask.new(:unit => :build) do |t|
|
|
76
|
+
t.libs << 'lib'
|
|
77
|
+
t.libs << 'test'
|
|
78
|
+
t.test_files = FileList['test/**/*_test.rb']
|
|
85
79
|
end
|
|
86
80
|
|
|
87
81
|
desc "Run conformance tests"
|
data/ext/Makefile
CHANGED
|
@@ -3,21 +3,22 @@ SHELL = /bin/sh
|
|
|
3
3
|
|
|
4
4
|
# V=0 quiet, V=1 verbose. other values don't work.
|
|
5
5
|
V = 0
|
|
6
|
+
V0 = $(V:0=)
|
|
6
7
|
Q1 = $(V:1=)
|
|
7
8
|
Q = $(Q1:0=@)
|
|
8
|
-
ECHO1 = $(V:1
|
|
9
|
-
ECHO = $(ECHO1:0=@echo)
|
|
9
|
+
ECHO1 = $(V:1=@ :)
|
|
10
|
+
ECHO = $(ECHO1:0=@ echo)
|
|
10
11
|
NULLCMD = :
|
|
11
12
|
|
|
12
13
|
#### Start of system configuration section. ####
|
|
13
14
|
|
|
14
15
|
srcdir = .
|
|
15
|
-
topdir = /opt/rubies/ruby-
|
|
16
|
+
topdir = /opt/rubies/ruby-3.4.3/include/ruby-3.4.0
|
|
16
17
|
hdrdir = $(topdir)
|
|
17
|
-
arch_hdrdir = /opt/rubies/ruby-
|
|
18
|
+
arch_hdrdir = /opt/rubies/ruby-3.4.3/include/ruby-3.4.0/arm64-darwin24
|
|
18
19
|
PATH_SEPARATOR = :
|
|
19
20
|
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
|
|
20
|
-
prefix = $(DESTDIR)/opt/rubies/ruby-
|
|
21
|
+
prefix = $(DESTDIR)/opt/rubies/ruby-3.4.3
|
|
21
22
|
rubysitearchprefix = $(rubylibprefix)/$(sitearch)
|
|
22
23
|
rubyarchprefix = $(rubylibprefix)/$(arch)
|
|
23
24
|
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
|
|
@@ -41,6 +42,7 @@ archincludedir = $(includedir)/$(arch)
|
|
|
41
42
|
sitearchlibdir = $(libdir)/$(sitearch)
|
|
42
43
|
archlibdir = $(libdir)/$(arch)
|
|
43
44
|
ridir = $(datarootdir)/$(RI_BASE_NAME)
|
|
45
|
+
modular_gc_dir = $(DESTDIR)
|
|
44
46
|
mandir = $(datarootdir)/man
|
|
45
47
|
localedir = $(datarootdir)/locale
|
|
46
48
|
libdir = $(exec_prefix)/lib
|
|
@@ -52,6 +54,7 @@ infodir = $(datarootdir)/info
|
|
|
52
54
|
docdir = $(datarootdir)/doc/$(PACKAGE)
|
|
53
55
|
oldincludedir = $(DESTDIR)/usr/include
|
|
54
56
|
includedir = $(SDKROOT)$(prefix)/include
|
|
57
|
+
runstatedir = $(localstatedir)/run
|
|
55
58
|
localstatedir = $(prefix)/var
|
|
56
59
|
sharedstatedir = $(prefix)/com
|
|
57
60
|
sysconfdir = $(prefix)/etc
|
|
@@ -63,56 +66,62 @@ bindir = $(exec_prefix)/bin
|
|
|
63
66
|
archdir = $(rubyarchdir)
|
|
64
67
|
|
|
65
68
|
|
|
69
|
+
CC_WRAPPER =
|
|
66
70
|
CC = clang
|
|
67
71
|
CXX = clang++
|
|
68
|
-
LIBRUBY = $(
|
|
72
|
+
LIBRUBY = $(LIBRUBY_SO)
|
|
69
73
|
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
|
|
70
|
-
LIBRUBYARG_SHARED =
|
|
71
|
-
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework CoreFoundation
|
|
74
|
+
LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
|
|
75
|
+
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework CoreFoundation $(MAINLIBS)
|
|
72
76
|
empty =
|
|
73
77
|
OUTFLAG = -o $(empty)
|
|
74
78
|
COUTFLAG = -o $(empty)
|
|
79
|
+
CSRCFLAG = $(empty)
|
|
75
80
|
|
|
76
81
|
RUBY_EXTCONF_H = extconf.h
|
|
77
|
-
cflags = $(optflags) $(debugflags) $(warnflags)
|
|
78
|
-
cxxflags =
|
|
82
|
+
cflags = $(hardenflags) -fdeclspec $(optflags) $(debugflags) $(warnflags)
|
|
83
|
+
cxxflags =
|
|
79
84
|
optflags = -O3 -fno-fast-math
|
|
80
85
|
debugflags = -ggdb3
|
|
81
|
-
warnflags = -Wall -Wextra -Wno-
|
|
86
|
+
warnflags = -Wall -Wextra -Wextra-tokens -Wdeprecated-declarations -Wdivision-by-zero -Wdiv-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wold-style-definition -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wmisleading-indentation -Wundef
|
|
87
|
+
cppflags =
|
|
82
88
|
CCDLFLAGS = -fno-common
|
|
83
|
-
CFLAGS = $(CCDLFLAGS)
|
|
89
|
+
CFLAGS = $(CCDLFLAGS) $(cflags) -fno-common -pipe -fbracket-depth=512 -DNDEBUG=1 -DDISABLE_OBJECT_POOL $(ARCH_FLAG)
|
|
84
90
|
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
|
|
85
91
|
DEFS =
|
|
86
|
-
CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\" -I/Users/tillsc/github/tillsc/multi_markdown/ext/mmd -I/
|
|
87
|
-
CXXFLAGS = $(CCDLFLAGS)
|
|
88
|
-
ldflags = -L. -
|
|
89
|
-
dldflags = -Wl,-undefined,dynamic_lookup
|
|
90
|
-
ARCH_FLAG =
|
|
92
|
+
CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\" -I/Users/tillsc/github/tillsc/multi_markdown/ext/mmd -I/opt/rubies/ruby-3.4.3/include -I/usr/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags)
|
|
93
|
+
CXXFLAGS = $(CCDLFLAGS) -fdeclspec -fbracket-depth=512 -DNDEBUG=1 -DDISABLE_OBJECT_POOL $(ARCH_FLAG)
|
|
94
|
+
ldflags = -L. -fstack-protector-strong
|
|
95
|
+
dldflags = -Wl,-undefined,dynamic_lookup
|
|
96
|
+
ARCH_FLAG = -arch arm64
|
|
91
97
|
DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
|
|
92
98
|
LDSHARED = $(CC) -dynamic -bundle
|
|
93
99
|
LDSHAREDXX = $(CXX) -dynamic -bundle
|
|
100
|
+
POSTLINK = dsymutil $@ 2>/dev/null; { test -z '$(RUBY_CODESIGN)' || codesign -s '$(RUBY_CODESIGN)' $@; }
|
|
94
101
|
AR = ar
|
|
102
|
+
LD = ld
|
|
95
103
|
EXEEXT =
|
|
96
104
|
|
|
97
105
|
RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)
|
|
98
|
-
RUBY_SO_NAME = ruby
|
|
106
|
+
RUBY_SO_NAME = ruby.3.4
|
|
99
107
|
RUBYW_INSTALL_NAME =
|
|
100
108
|
RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
|
|
101
109
|
RUBYW_BASE_NAME = rubyw
|
|
102
110
|
RUBY_BASE_NAME = ruby
|
|
103
111
|
|
|
104
|
-
arch =
|
|
112
|
+
arch = arm64-darwin24
|
|
105
113
|
sitearch = $(arch)
|
|
106
|
-
ruby_version =
|
|
114
|
+
ruby_version = 3.4.0
|
|
107
115
|
ruby = $(bindir)/$(RUBY_BASE_NAME)
|
|
108
116
|
RUBY = $(ruby)
|
|
109
|
-
|
|
117
|
+
BUILTRUBY = $(bindir)/$(RUBY_BASE_NAME)
|
|
118
|
+
ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h $(RUBY_EXTCONF_H)
|
|
110
119
|
|
|
111
120
|
RM = rm -f
|
|
112
|
-
RM_RF =
|
|
121
|
+
RM_RF = rm -fr
|
|
113
122
|
RMDIRS = rmdir -p
|
|
114
|
-
MAKEDIRS =
|
|
115
|
-
INSTALL = /usr/
|
|
123
|
+
MAKEDIRS = mkdir -p
|
|
124
|
+
INSTALL = /usr/bin/install -c
|
|
116
125
|
INSTALL_PROG = $(INSTALL) -m 0755
|
|
117
126
|
INSTALL_DATA = $(INSTALL) -m 644
|
|
118
127
|
COPY = cp
|
|
@@ -121,9 +130,8 @@ TOUCH = exit >
|
|
|
121
130
|
#### End of system configuration section. ####
|
|
122
131
|
|
|
123
132
|
preload =
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
LIBPATH = -L. -L$(libdir) -L/opt/rubies/ruby-2.3.1/lib
|
|
133
|
+
libpath = . $(libdir) /opt/rubies/ruby-3.4.3/lib
|
|
134
|
+
LIBPATH = -L. -L$(libdir) -L/opt/rubies/ruby-3.4.3/lib
|
|
127
135
|
DEFFILE =
|
|
128
136
|
|
|
129
137
|
CLEANFILES = mkmf.log
|
|
@@ -134,11 +142,12 @@ extout =
|
|
|
134
142
|
extout_prefix =
|
|
135
143
|
target_prefix =
|
|
136
144
|
LOCAL_LIBS =
|
|
137
|
-
LIBS =
|
|
145
|
+
LIBS = $(LIBRUBYARG_SHARED) -lpthread
|
|
138
146
|
ORIG_SRCS = ruby_multi_markdown.c
|
|
139
|
-
SRCS = $(ORIG_SRCS)
|
|
140
|
-
OBJS = mmd/
|
|
147
|
+
SRCS = $(ORIG_SRCS) aho-corasick.c argtable3.c beamer.c char.c critic_markup.c d_string.c epub.c file.c html.c itmz-lexer.c itmz-parser.c itmz-reader.c itmz.c latex.c lexer.c main.c memoir.c miniz.c mmd.c object_pool.c opendocument-content.c opendocument.c opml-lexer.c opml-parser.c opml-reader.c opml.c parser.c rng.c scanners.c stack.c textbundle.c token.c token_pairs.c transclude.c uuid.c writer.c xml.c zip.c ruby_multi_markdown.c
|
|
148
|
+
OBJS = mmd/aho-corasick.o mmd/argtable3.o mmd/beamer.o mmd/char.o mmd/critic_markup.o mmd/d_string.o mmd/epub.o mmd/file.o mmd/html.o mmd/itmz-lexer.o mmd/itmz-parser.o mmd/itmz-reader.o mmd/itmz.o mmd/latex.o mmd/lexer.o mmd/main.o mmd/memoir.o mmd/miniz.o mmd/mmd.o mmd/object_pool.o mmd/opendocument-content.o mmd/opendocument.o mmd/opml-lexer.o mmd/opml-parser.o mmd/opml-reader.o mmd/opml.o mmd/parser.o mmd/rng.o mmd/scanners.o mmd/stack.o mmd/textbundle.o mmd/token.o mmd/token_pairs.o mmd/transclude.o mmd/uuid.o mmd/writer.o mmd/xml.o mmd/zip.o ruby_multi_markdown.o
|
|
141
149
|
HDRS = $(srcdir)/extconf.h
|
|
150
|
+
LOCAL_HDRS =
|
|
142
151
|
TARGET = multi_markdown
|
|
143
152
|
TARGET_NAME = multi_markdown
|
|
144
153
|
TARGET_ENTRY = Init_$(TARGET_NAME)
|
|
@@ -151,15 +160,16 @@ BINDIR = $(bindir)
|
|
|
151
160
|
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
|
|
152
161
|
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
|
|
153
162
|
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
|
|
154
|
-
HDRDIR = $(
|
|
155
|
-
ARCHHDRDIR = $(
|
|
156
|
-
|
|
157
|
-
TARGET_SO = $(DLLIB)
|
|
158
|
-
CLEANLIBS = $(
|
|
159
|
-
CLEANOBJS = *.
|
|
163
|
+
HDRDIR = $(sitehdrdir)$(target_prefix)
|
|
164
|
+
ARCHHDRDIR = $(sitearchhdrdir)$(target_prefix)
|
|
165
|
+
TARGET_SO_DIR =
|
|
166
|
+
TARGET_SO = $(TARGET_SO_DIR)$(DLLIB)
|
|
167
|
+
CLEANLIBS = $(TARGET_SO) $(TARGET_SO:=.dSYM)
|
|
168
|
+
CLEANOBJS = $(OBJS) *.bak
|
|
169
|
+
TARGET_SO_DIR_TIMESTAMP = $(TIMESTAMP_DIR)/.sitearchdir.time
|
|
160
170
|
|
|
161
171
|
all: $(DLLIB)
|
|
162
|
-
static: $(STATIC_LIB)
|
|
172
|
+
static: $(STATIC_LIB)
|
|
163
173
|
.PHONY: all install static install-so install-rb
|
|
164
174
|
.PHONY: clean clean-so clean-static clean-rb
|
|
165
175
|
|
|
@@ -168,7 +178,7 @@ clean-rb-default::
|
|
|
168
178
|
clean-rb::
|
|
169
179
|
clean-so::
|
|
170
180
|
clean: clean-so clean-static clean-rb-default clean-rb
|
|
171
|
-
-$(Q)$(
|
|
181
|
+
-$(Q)$(RM_RF) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time
|
|
172
182
|
|
|
173
183
|
distclean-rb-default::
|
|
174
184
|
distclean-rb::
|
|
@@ -182,17 +192,19 @@ distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb
|
|
|
182
192
|
realclean: distclean
|
|
183
193
|
install: install-so install-rb
|
|
184
194
|
|
|
185
|
-
install-so: $(DLLIB) $(
|
|
195
|
+
install-so: $(DLLIB) $(TARGET_SO_DIR_TIMESTAMP)
|
|
186
196
|
$(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
|
|
187
197
|
clean-static::
|
|
188
198
|
-$(Q)$(RM) $(STATIC_LIB)
|
|
189
|
-
install-rb: pre-install-rb install-rb-default
|
|
190
|
-
install-rb-default: pre-install-rb-default
|
|
199
|
+
install-rb: pre-install-rb do-install-rb install-rb-default
|
|
200
|
+
install-rb-default: pre-install-rb-default do-install-rb-default
|
|
191
201
|
pre-install-rb: Makefile
|
|
192
202
|
pre-install-rb-default: Makefile
|
|
203
|
+
do-install-rb:
|
|
204
|
+
do-install-rb-default:
|
|
193
205
|
pre-install-rb-default:
|
|
194
206
|
@$(NULLCMD)
|
|
195
|
-
$(
|
|
207
|
+
$(TARGET_SO_DIR_TIMESTAMP):
|
|
196
208
|
$(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)
|
|
197
209
|
$(Q) $(TOUCH) $@
|
|
198
210
|
|
|
@@ -204,53 +216,53 @@ site-install-rb: install-rb
|
|
|
204
216
|
|
|
205
217
|
.cc.o:
|
|
206
218
|
$(ECHO) compiling $(<)
|
|
207
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
|
219
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
|
208
220
|
|
|
209
221
|
.cc.S:
|
|
210
222
|
$(ECHO) translating $(<)
|
|
211
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
|
223
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
|
212
224
|
|
|
213
225
|
.mm.o:
|
|
214
226
|
$(ECHO) compiling $(<)
|
|
215
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
|
227
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
|
216
228
|
|
|
217
229
|
.mm.S:
|
|
218
230
|
$(ECHO) translating $(<)
|
|
219
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
|
231
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
|
220
232
|
|
|
221
233
|
.cxx.o:
|
|
222
234
|
$(ECHO) compiling $(<)
|
|
223
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
|
235
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
|
224
236
|
|
|
225
237
|
.cxx.S:
|
|
226
238
|
$(ECHO) translating $(<)
|
|
227
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
|
239
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
|
228
240
|
|
|
229
241
|
.cpp.o:
|
|
230
242
|
$(ECHO) compiling $(<)
|
|
231
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
|
|
243
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
|
232
244
|
|
|
233
245
|
.cpp.S:
|
|
234
246
|
$(ECHO) translating $(<)
|
|
235
|
-
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $<
|
|
247
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
|
236
248
|
|
|
237
249
|
.c.o:
|
|
238
250
|
$(ECHO) compiling $(<)
|
|
239
|
-
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
|
|
251
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
|
240
252
|
|
|
241
253
|
.c.S:
|
|
242
254
|
$(ECHO) translating $(<)
|
|
243
|
-
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $<
|
|
255
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
|
244
256
|
|
|
245
257
|
.m.o:
|
|
246
258
|
$(ECHO) compiling $(<)
|
|
247
|
-
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
|
|
259
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
|
248
260
|
|
|
249
261
|
.m.S:
|
|
250
262
|
$(ECHO) translating $(<)
|
|
251
|
-
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $<
|
|
263
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
|
252
264
|
|
|
253
|
-
$(
|
|
265
|
+
$(TARGET_SO): $(OBJS) Makefile
|
|
254
266
|
$(ECHO) linking shared-object $(DLLIB)
|
|
255
267
|
-$(Q)$(RM) $(@)
|
|
256
268
|
$(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
|
data/ext/extconf.rb
CHANGED
|
@@ -4,16 +4,18 @@ LIBDIR = RbConfig::CONFIG['libdir']
|
|
|
4
4
|
INCLUDEDIR = RbConfig::CONFIG['includedir']
|
|
5
5
|
|
|
6
6
|
if RbConfig::CONFIG['CC'] == 'clang' || RbConfig::CONFIG['CC_VERSION_MESSAGE'].to_s.include?('clang')
|
|
7
|
-
$CFLAGS="#{$CFLAGS} -fbracket-depth=512
|
|
8
|
-
$CXXFLAGS="#{$CXXFLAGS} -fbracket-depth=512
|
|
7
|
+
$CFLAGS="#{$CFLAGS} -fbracket-depth=512"
|
|
8
|
+
$CXXFLAGS="#{$CXXFLAGS} -fbracket-depth=512"
|
|
9
9
|
else
|
|
10
|
-
$CFLAGS="#{$CFLAGS} -std=c99
|
|
11
|
-
$CXXFLAGS="#{$CXXFLAGS} -std=c99
|
|
10
|
+
$CFLAGS="#{$CFLAGS} -std=c99"
|
|
11
|
+
$CXXFLAGS="#{$CXXFLAGS} -std=c99"
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
+
$CFLAGS << ' -DNDEBUG=1 -DDISABLE_OBJECT_POOL'
|
|
15
|
+
$CXXFLAGS << ' -DNDEBUG=1 -DDISABLE_OBJECT_POOL'
|
|
16
|
+
|
|
14
17
|
HEADER_DIRS = [
|
|
15
18
|
File.expand_path('../mmd', __FILE__),
|
|
16
|
-
File.expand_path('../mmd/include', __FILE__),
|
|
17
19
|
INCLUDEDIR,
|
|
18
20
|
'/usr/include'
|
|
19
21
|
]
|
data/ext/mmd/aho-corasick.c
CHANGED
|
@@ -157,7 +157,7 @@ bool trie_insert(trie * a, const char * key, unsigned short match_type) {
|
|
|
157
157
|
|
|
158
158
|
|
|
159
159
|
#ifdef TEST
|
|
160
|
-
void Test_trie_insert(CuTest* tc) {
|
|
160
|
+
void Test_trie_insert(CuTest * tc) {
|
|
161
161
|
trie * a = trie_new(0);
|
|
162
162
|
|
|
163
163
|
CuAssertIntEquals(tc, kTrieStartingSize, a->capacity);
|
|
@@ -227,7 +227,7 @@ unsigned short trie_search_match_type(trie * a, const char * query) {
|
|
|
227
227
|
|
|
228
228
|
|
|
229
229
|
#ifdef TEST
|
|
230
|
-
void Test_trie_search(CuTest* tc) {
|
|
230
|
+
void Test_trie_search(CuTest * tc) {
|
|
231
231
|
trie * a = trie_new(0);
|
|
232
232
|
|
|
233
233
|
trie_insert(a, "foo", 42);
|
|
@@ -309,7 +309,7 @@ void ac_trie_prepare(trie * a) {
|
|
|
309
309
|
|
|
310
310
|
|
|
311
311
|
#ifdef TEST
|
|
312
|
-
void Test_trie_prepare(CuTest* tc) {
|
|
312
|
+
void Test_trie_prepare(CuTest * tc) {
|
|
313
313
|
trie * a = trie_new(0);
|
|
314
314
|
|
|
315
315
|
trie_insert(a, "a", 1);
|
|
@@ -478,9 +478,9 @@ void match_set_filter_leftmost_longest(match * header) {
|
|
|
478
478
|
m->next->start > m->start &&
|
|
479
479
|
m->next->start < m->start + m->len) {
|
|
480
480
|
// This match is "lefter" than next
|
|
481
|
-
|
|
481
|
+
#ifndef __clang_analyzer__
|
|
482
482
|
match_excise(m->next);
|
|
483
|
-
|
|
483
|
+
#endif
|
|
484
484
|
}
|
|
485
485
|
|
|
486
486
|
while (m->next &&
|
|
@@ -497,9 +497,9 @@ void match_set_filter_leftmost_longest(match * header) {
|
|
|
497
497
|
m->prev->start >= m->start) {
|
|
498
498
|
// We are "lefter" than previous
|
|
499
499
|
n = m->prev;
|
|
500
|
-
|
|
500
|
+
#ifndef __clang_analyzer__
|
|
501
501
|
match_excise(n);
|
|
502
|
-
|
|
502
|
+
#endif
|
|
503
503
|
}
|
|
504
504
|
|
|
505
505
|
m = m->next;
|
|
@@ -519,7 +519,7 @@ match * ac_trie_leftmost_longest_search(trie * a, const char * source, size_t st
|
|
|
519
519
|
|
|
520
520
|
|
|
521
521
|
#ifdef TEST
|
|
522
|
-
void Test_aho_trie_search(CuTest* tc) {
|
|
522
|
+
void Test_aho_trie_search(CuTest * tc) {
|
|
523
523
|
trie * a = trie_new(0);
|
|
524
524
|
|
|
525
525
|
trie_insert(a, "foo", 42);
|
data/ext/mmd/aho-corasick.h
CHANGED
|
@@ -73,7 +73,7 @@ struct trie {
|
|
|
73
73
|
size_t size; // How many nodes are in use?
|
|
74
74
|
size_t capacity; // How many nodes can we hold
|
|
75
75
|
|
|
76
|
-
trie_node
|
|
76
|
+
trie_node * node; // Pointer to stack of nodes
|
|
77
77
|
};
|
|
78
78
|
|
|
79
79
|
typedef struct trie trie;
|
|
@@ -83,8 +83,8 @@ struct match {
|
|
|
83
83
|
size_t start; // Starting offset for this match
|
|
84
84
|
size_t len; // Length for this match
|
|
85
85
|
unsigned short match_type; // Match type
|
|
86
|
-
struct match
|
|
87
|
-
struct match
|
|
86
|
+
struct match * next; // Pointer to next match in list
|
|
87
|
+
struct match * prev; // Pointer to previous match in list
|
|
88
88
|
};
|
|
89
89
|
|
|
90
90
|
typedef struct match match;
|