trenni 3.11.0 → 3.12.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/ext/tmp/x86_64-linux/lib/trenni/trenni.so +0 -0
  3. data/ext/tmp/{x86_64-darwin16 → x86_64-linux}/trenni/2.4.0/Makefile +24 -25
  4. data/ext/tmp/x86_64-linux/trenni/2.4.0/escape.o +0 -0
  5. data/ext/tmp/x86_64-linux/trenni/2.4.0/markup.o +0 -0
  6. data/ext/tmp/x86_64-linux/trenni/2.4.0/mkmf.log +108 -0
  7. data/ext/tmp/x86_64-linux/trenni/2.4.0/tag.o +0 -0
  8. data/ext/tmp/x86_64-linux/trenni/2.4.0/template.o +0 -0
  9. data/ext/tmp/x86_64-linux/trenni/2.4.0/trenni.o +0 -0
  10. data/ext/tmp/x86_64-linux/trenni/2.4.0/trenni.so +0 -0
  11. data/ext/tmp/{x86_64-darwin18/trenni/2.6.2 → x86_64-linux/trenni/2.7.0}/Makefile +32 -32
  12. data/ext/tmp/x86_64-linux/trenni/2.7.0/escape.o +0 -0
  13. data/ext/tmp/x86_64-linux/trenni/2.7.0/markup.o +0 -0
  14. data/ext/tmp/x86_64-linux/trenni/2.7.0/mkmf.log +113 -0
  15. data/ext/tmp/x86_64-linux/trenni/2.7.0/query.o +0 -0
  16. data/ext/tmp/x86_64-linux/trenni/2.7.0/tag.o +0 -0
  17. data/ext/tmp/x86_64-linux/trenni/2.7.0/template.o +0 -0
  18. data/ext/tmp/x86_64-linux/trenni/2.7.0/trenni.o +0 -0
  19. data/ext/tmp/x86_64-linux/trenni/2.7.0/trenni.so +0 -0
  20. data/ext/tmp/{x86_64-darwin19 → x86_64-linux}/trenni/2.7.1/Makefile +27 -28
  21. data/ext/tmp/x86_64-linux/trenni/2.7.1/escape.o +0 -0
  22. data/ext/tmp/x86_64-linux/trenni/2.7.1/markup.o +0 -0
  23. data/ext/tmp/x86_64-linux/trenni/2.7.1/mkmf.log +113 -0
  24. data/ext/tmp/x86_64-linux/trenni/2.7.1/query.o +0 -0
  25. data/ext/tmp/x86_64-linux/trenni/2.7.1/tag.o +0 -0
  26. data/ext/tmp/x86_64-linux/trenni/2.7.1/template.o +0 -0
  27. data/ext/tmp/x86_64-linux/trenni/2.7.1/trenni.o +0 -0
  28. data/ext/tmp/x86_64-linux/trenni/2.7.1/trenni.so +0 -0
  29. data/lib/trenni/builder.rb +46 -10
  30. data/lib/trenni/fallback/markup.rl.dot +278 -0
  31. data/lib/trenni/fallback/markup.rl.pdf +0 -0
  32. data/lib/trenni/fallback/query.rl.dot +54 -0
  33. data/lib/trenni/fallback/query.rl.pdf +0 -0
  34. data/lib/trenni/fallback/template.rl.dot +270 -0
  35. data/lib/trenni/fallback/template.rl.pdf +0 -0
  36. data/lib/trenni/template.rb +9 -18
  37. data/lib/trenni/trenni.so +0 -0
  38. data/lib/trenni/version.rb +1 -1
  39. data/spec/trenni/builder_spec.rb +1 -1
  40. data/spec/trenni/template_spec/builder.trenni +2 -2
  41. metadata +41 -51
  42. data/ext/.DS_Store +0 -0
  43. data/ext/tmp/.DS_Store +0 -0
  44. data/ext/tmp/x86_64-darwin16/lib/trenni/trenni.bundle +0 -0
  45. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/escape.o +0 -0
  46. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/markup.o +0 -0
  47. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/mkmf.log +0 -105
  48. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/tag.o +0 -0
  49. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/template.o +0 -0
  50. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/trenni.bundle +0 -0
  51. data/ext/tmp/x86_64-darwin16/trenni/2.4.0/trenni.o +0 -0
  52. data/ext/tmp/x86_64-darwin18/lib/trenni/trenni.bundle +0 -0
  53. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/Makefile +0 -266
  54. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/escape.o +0 -0
  55. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/markup.o +0 -0
  56. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/mkmf.log +0 -109
  57. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/tag.o +0 -0
  58. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/template.o +0 -0
  59. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/trenni.bundle +0 -0
  60. data/ext/tmp/x86_64-darwin18/trenni/2.6.1/trenni.o +0 -0
  61. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/escape.o +0 -0
  62. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/markup.o +0 -0
  63. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/mkmf.log +0 -109
  64. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/tag.o +0 -0
  65. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/template.o +0 -0
  66. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/trenni.bundle +0 -0
  67. data/ext/tmp/x86_64-darwin18/trenni/2.6.2/trenni.o +0 -0
  68. data/ext/tmp/x86_64-darwin19/lib/trenni/trenni.bundle +0 -0
  69. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/escape.o +0 -0
  70. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/markup.o +0 -0
  71. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/mkmf.log +0 -109
  72. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/query.o +0 -0
  73. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/tag.o +0 -0
  74. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/template.o +0 -0
  75. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/trenni.bundle +0 -0
  76. data/ext/tmp/x86_64-darwin19/trenni/2.7.1/trenni.o +0 -0
  77. data/ext/trenni/.DS_Store +0 -0
  78. data/lib/.DS_Store +0 -0
  79. data/lib/trenni/.DS_Store +0 -0
  80. data/parsers/.DS_Store +0 -0
  81. data/spec/.DS_Store +0 -0
  82. data/spec/trenni/template_spec/.DS_Store +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b8508e64521a7d867908f4a7fce4d75330abd8e0139b333705b951b3612a1f79
4
- data.tar.gz: 2778994f2df2428a29c142a9b6caee348ba759a4edba7e761dcefc9cff7e91d2
3
+ metadata.gz: 24fa931d5bc2440544d99451affb9fb2a2e356f69ad6a5c0d5da6133d58ff45b
4
+ data.tar.gz: 84ed87a7f93c6b306220fe10e3822b222962db66068664df4afd29b432823864
5
5
  SHA512:
6
- metadata.gz: 76ad90f58c94775c28b693c31a4ab2a9b15f450a4a9bf27820d6977bf9edf77052033050c20067cb6e2281a860e6eccb8fd5d795772257b92184f91ff25b5b9b
7
- data.tar.gz: 809eeb0ed1af8e48abc3fc111a0b7da691f2e669ec359c44177a74cbb46f49f0abed4d93985385bca6dc91c45cb202adb6c5fee403ff38bbedebb03efbd2594a
6
+ metadata.gz: 57068d50f31f1d6bdbd2976026da38b57c279350f2269f8437546245526a1483e57d7619f02f5e2c5e52f2d339e3ecb524951516173bafa46d8488156d6ddc2c
7
+ data.tar.gz: 969c619651b2af237511d9230f15678c51d223266d37e6f3ab7c5861d39866c8322f89376124017708d2bddba3f3e446700f9c9b1a8448bc98fd3f9a7d1ac7f2
@@ -12,12 +12,12 @@ NULLCMD = :
12
12
  #### Start of system configuration section. ####
13
13
 
14
14
  srcdir = ../../../../trenni
15
- topdir = /Users/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0
15
+ topdir = /home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0
16
16
  hdrdir = $(topdir)
17
- arch_hdrdir = /Users/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-darwin16
17
+ arch_hdrdir = /home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-linux
18
18
  PATH_SEPARATOR = :
19
19
  VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
20
- prefix = $(DESTDIR)/Users/samuel/.rvm/rubies/ruby-2.4.0
20
+ prefix = $(DESTDIR)/home/samuel/.rvm/rubies/ruby-2.4.0
21
21
  rubysitearchprefix = $(rubylibprefix)/$(sitearch)
22
22
  rubyarchprefix = $(rubylibprefix)/$(arch)
23
23
  rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
@@ -50,7 +50,7 @@ dvidir = $(docdir)
50
50
  htmldir = $(docdir)
51
51
  infodir = $(datarootdir)/info
52
52
  docdir = $(datarootdir)/doc/$(PACKAGE)
53
- oldincludedir = $(SDKROOT)/usr/include
53
+ oldincludedir = $(DESTDIR)/usr/include
54
54
  includedir = $(prefix)/include
55
55
  localstatedir = $(prefix)/var
56
56
  sharedstatedir = $(prefix)/com
@@ -67,8 +67,8 @@ CC = gcc
67
67
  CXX = g++
68
68
  LIBRUBY = $(LIBRUBY_SO)
69
69
  LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
70
- LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
71
- LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework CoreFoundation
70
+ LIBRUBYARG_SHARED = -Wl,-R$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)
71
+ LIBRUBYARG_STATIC = -Wl,-R$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)-static
72
72
  empty =
73
73
  OUTFLAG = -o $(empty)
74
74
  COUTFLAG = -o $(empty)
@@ -79,30 +79,30 @@ cflags = $(optflags) $(debugflags) $(warnflags)
79
79
  cxxflags = $(optflags) $(debugflags) $(warnflags)
80
80
  optflags = -O3 -fno-fast-math
81
81
  debugflags = -ggdb3
82
- warnflags = -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens
83
- CCDLFLAGS = -fno-common
84
- CFLAGS = $(CCDLFLAGS) $(cflags) -fno-common -pipe -O3 -std=c99 $(ARCH_FLAG)
82
+ warnflags = -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wno-maybe-uninitialized
83
+ CCDLFLAGS = -fPIC
84
+ CFLAGS = $(CCDLFLAGS) $(cflags) -fPIC -O3 -std=c99 $(ARCH_FLAG)
85
85
  INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
86
86
  DEFS =
87
- CPPFLAGS = -DHAVE_RB_SYM2STR -DHAVE_RB_STR_CAT_CSTR -I/opt/local/include -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags)
87
+ CPPFLAGS = -DHAVE_RB_SYM2STR -DHAVE_RB_STR_CAT_CSTR $(DEFS) $(cppflags)
88
88
  CXXFLAGS = $(CCDLFLAGS) $(cxxflags) $(ARCH_FLAG)
89
- ldflags = -L. -fstack-protector -L/opt/local/lib -L/opt/local/lib
90
- dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -L/opt/local/lib -L/opt/local/lib
89
+ ldflags = -L. -fstack-protector -rdynamic -Wl,-export-dynamic
90
+ dldflags = -Wl,--compress-debug-sections=zlib
91
91
  ARCH_FLAG =
92
92
  DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
93
- LDSHARED = $(CC) -dynamic -bundle
94
- LDSHAREDXX = $(CXX) -dynamic -bundle
93
+ LDSHARED = $(CC) -shared
94
+ LDSHAREDXX = $(CXX) -shared
95
95
  AR = ar
96
96
  EXEEXT =
97
97
 
98
98
  RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)
99
- RUBY_SO_NAME = ruby.2.4.0
99
+ RUBY_SO_NAME = ruby
100
100
  RUBYW_INSTALL_NAME =
101
101
  RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
102
102
  RUBYW_BASE_NAME = rubyw
103
103
  RUBY_BASE_NAME = ruby
104
104
 
105
- arch = x86_64-darwin16
105
+ arch = x86_64-linux
106
106
  sitearch = $(arch)
107
107
  ruby_version = 2.4.0
108
108
  ruby = $(bindir)/$(RUBY_BASE_NAME)
@@ -111,9 +111,9 @@ ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h
111
111
 
112
112
  RM = rm -f
113
113
  RM_RF = $(RUBY) -run -e rm -- -rf
114
- RMDIRS = rmdir -p
115
- MAKEDIRS = /opt/local/bin/gmkdir -p
116
- INSTALL = /opt/local/bin/ginstall -c
114
+ RMDIRS = rmdir --ignore-fail-on-non-empty -p
115
+ MAKEDIRS = /usr/bin/mkdir -p
116
+ INSTALL = /usr/bin/install -c
117
117
  INSTALL_PROG = $(INSTALL) -m 0755
118
118
  INSTALL_DATA = $(INSTALL) -m 644
119
119
  COPY = cp
@@ -122,8 +122,8 @@ TOUCH = exit >
122
122
  #### End of system configuration section. ####
123
123
 
124
124
  preload =
125
- libpath = . $(libdir) /opt/local/lib
126
- LIBPATH = -L. -L$(libdir) -L/opt/local/lib
125
+ libpath = . $(libdir)
126
+ LIBPATH = -L. -L$(libdir) -Wl,-R$(libdir)
127
127
  DEFFILE =
128
128
 
129
129
  CLEANFILES = mkmf.log
@@ -134,16 +134,16 @@ extout =
134
134
  extout_prefix =
135
135
  target_prefix = /trenni
136
136
  LOCAL_LIBS =
137
- LIBS = $(LIBRUBYARG_SHARED) -lpthread -lgmp -ldl -lobjc
137
+ LIBS = $(LIBRUBYARG_SHARED) -lpthread -lgmp -ldl -lcrypt -lm -lc
138
138
  ORIG_SRCS = escape.c markup.c tag.c template.c trenni.c
139
139
  SRCS = $(ORIG_SRCS)
140
140
  OBJS = escape.o markup.o tag.o template.o trenni.o
141
- HDRS = $(srcdir)/escape.h $(srcdir)/markup.h $(srcdir)/tag.h $(srcdir)/template.h $(srcdir)/trenni.h
141
+ HDRS = $(srcdir)/tag.h $(srcdir)/trenni.h $(srcdir)/markup.h $(srcdir)/escape.h $(srcdir)/template.h
142
142
  LOCAL_HDRS =
143
143
  TARGET = trenni
144
144
  TARGET_NAME = trenni
145
145
  TARGET_ENTRY = Init_$(TARGET_NAME)
146
- DLLIB = $(TARGET).bundle
146
+ DLLIB = $(TARGET).so
147
147
  EXTSTATIC =
148
148
  STATIC_LIB =
149
149
 
@@ -257,7 +257,6 @@ $(TARGET_SO): $(OBJS) Makefile
257
257
  $(ECHO) linking shared-object trenni/$(DLLIB)
258
258
  -$(Q)$(RM) $(@)
259
259
  $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
260
- $(Q) $(POSTLINK)
261
260
 
262
261
 
263
262
 
@@ -0,0 +1,108 @@
1
+ have_func: checking for rb_sym2str()... -------------------- yes
2
+
3
+ "gcc -o conftest -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-linux -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/ruby/backward -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0 -I../../../../trenni -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wno-maybe-uninitialized -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -lruby -lpthread -lgmp -ldl -lcrypt -lm -lc"
4
+ checked program was:
5
+ /* begin */
6
+ 1: #include "ruby.h"
7
+ 2:
8
+ 3: int main(int argc, char **argv)
9
+ 4: {
10
+ 5: return 0;
11
+ 6: }
12
+ /* end */
13
+
14
+ "gcc -o conftest -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-linux -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/ruby/backward -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0 -I../../../../trenni -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wno-maybe-uninitialized -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -lruby -lpthread -lgmp -ldl -lcrypt -lm -lc"
15
+ checked program was:
16
+ /* begin */
17
+ 1: #include "ruby.h"
18
+ 2:
19
+ 3: /*top*/
20
+ 4: extern int t(void);
21
+ 5: int main(int argc, char **argv)
22
+ 6: {
23
+ 7: if (argc > 1000000) {
24
+ 8: printf("%p", &t);
25
+ 9: }
26
+ 10:
27
+ 11: return 0;
28
+ 12: }
29
+ 13: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_sym2str; return !p; }
30
+ /* end */
31
+
32
+ --------------------
33
+
34
+ have_func: checking for rb_str_cat_cstr()... -------------------- yes
35
+
36
+ "gcc -o conftest -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-linux -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/ruby/backward -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0 -I../../../../trenni -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wno-maybe-uninitialized -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -lruby -lpthread -lgmp -ldl -lcrypt -lm -lc"
37
+ checked program was:
38
+ /* begin */
39
+ 1: #include "ruby.h"
40
+ 2:
41
+ 3: /*top*/
42
+ 4: extern int t(void);
43
+ 5: int main(int argc, char **argv)
44
+ 6: {
45
+ 7: if (argc > 1000000) {
46
+ 8: printf("%p", &t);
47
+ 9: }
48
+ 10:
49
+ 11: return 0;
50
+ 12: }
51
+ 13: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_str_cat_cstr; return !p; }
52
+ /* end */
53
+
54
+ --------------------
55
+
56
+ have_func: checking for rb_str_reserve()... -------------------- no
57
+
58
+ "gcc -o conftest -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-linux -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/ruby/backward -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0 -I../../../../trenni -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wno-maybe-uninitialized -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -lruby -lpthread -lgmp -ldl -lcrypt -lm -lc"
59
+ conftest.c: In function ‘t’:
60
+ conftest.c:13:57: error: ‘rb_str_reserve’ undeclared (first use in this function)
61
+ int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_str_reserve; return !p; }
62
+ ^~~~~~~~~~~~~~
63
+ conftest.c:13:57: note: each undeclared identifier is reported only once for each function it appears in
64
+ conftest.c: At top level:
65
+ cc1: warning: unrecognized command line option ‘-Wno-self-assign’
66
+ cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
67
+ cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
68
+ checked program was:
69
+ /* begin */
70
+ 1: #include "ruby.h"
71
+ 2:
72
+ 3: /*top*/
73
+ 4: extern int t(void);
74
+ 5: int main(int argc, char **argv)
75
+ 6: {
76
+ 7: if (argc > 1000000) {
77
+ 8: printf("%p", &t);
78
+ 9: }
79
+ 10:
80
+ 11: return 0;
81
+ 12: }
82
+ 13: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_str_reserve; return !p; }
83
+ /* end */
84
+
85
+ "gcc -o conftest -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/x86_64-linux -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0/ruby/backward -I/home/samuel/.rvm/rubies/ruby-2.4.0/include/ruby-2.4.0 -I../../../../trenni -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Wimplicit-int -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -Wno-maybe-uninitialized -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/home/samuel/.rvm/rubies/ruby-2.4.0/lib -L/home/samuel/.rvm/rubies/ruby-2.4.0/lib -lruby -lpthread -lgmp -ldl -lcrypt -lm -lc"
86
+ /tmp/ccpH7HyN.o: In function `t':
87
+ /home/samuel/Documents/Programming/ioquatix/trenni/ext/tmp/x86_64-linux/trenni/2.4.0/conftest.c:14: undefined reference to `rb_str_reserve'
88
+ collect2: error: ld returned 1 exit status
89
+ checked program was:
90
+ /* begin */
91
+ 1: #include "ruby.h"
92
+ 2:
93
+ 3: /*top*/
94
+ 4: extern int t(void);
95
+ 5: int main(int argc, char **argv)
96
+ 6: {
97
+ 7: if (argc > 1000000) {
98
+ 8: printf("%p", &t);
99
+ 9: }
100
+ 10:
101
+ 11: return 0;
102
+ 12: }
103
+ 13: extern void rb_str_reserve();
104
+ 14: int t(void) { rb_str_reserve(); return 0; }
105
+ /* end */
106
+
107
+ --------------------
108
+
@@ -12,12 +12,12 @@ NULLCMD = :
12
12
  #### Start of system configuration section. ####
13
13
 
14
14
  srcdir = ../../../../trenni
15
- topdir = /Users/samuel/.rvm/rubies/ruby-2.6.2/include/ruby-2.6.0
15
+ topdir = /home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0
16
16
  hdrdir = $(topdir)
17
- arch_hdrdir = /Users/samuel/.rvm/rubies/ruby-2.6.2/include/ruby-2.6.0/x86_64-darwin18
17
+ arch_hdrdir = /home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/x86_64-linux
18
18
  PATH_SEPARATOR = :
19
19
  VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
20
- prefix = $(DESTDIR)/Users/samuel/.rvm/rubies/ruby-2.6.2
20
+ prefix = $(DESTDIR)/home/samuel/.rbenv/versions/2.7.0
21
21
  rubysitearchprefix = $(rubylibprefix)/$(sitearch)
22
22
  rubyarchprefix = $(rubylibprefix)/$(arch)
23
23
  rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
@@ -50,8 +50,9 @@ dvidir = $(docdir)
50
50
  htmldir = $(docdir)
51
51
  infodir = $(datarootdir)/info
52
52
  docdir = $(datarootdir)/doc/$(PACKAGE)
53
- oldincludedir = $(SDKROOT)/usr/include
53
+ oldincludedir = $(DESTDIR)/usr/include
54
54
  includedir = $(prefix)/include
55
+ runstatedir = $(localstatedir)/run
55
56
  localstatedir = $(prefix)/var
56
57
  sharedstatedir = $(prefix)/com
57
58
  sysconfdir = $(prefix)/etc
@@ -64,12 +65,12 @@ archdir = $(rubyarchdir)
64
65
 
65
66
 
66
67
  CC_WRAPPER =
67
- CC = $(CC_WRAPPER) gcc
68
+ CC = gcc
68
69
  CXX = g++
69
70
  LIBRUBY = $(LIBRUBY_SO)
70
71
  LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
71
- LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
72
- LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework Security -framework Foundation $(MAINLIBS)
72
+ LIBRUBYARG_SHARED = -Wl,-rpath,$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)
73
+ LIBRUBYARG_STATIC = -Wl,-rpath,$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)-static $(MAINLIBS)
73
74
  empty =
74
75
  OUTFLAG = -o $(empty)
75
76
  COUTFLAG = -o $(empty)
@@ -77,45 +78,45 @@ CSRCFLAG = $(empty)
77
78
 
78
79
  RUBY_EXTCONF_H =
79
80
  cflags = $(optflags) $(debugflags) $(warnflags)
80
- cxxflags = $(optflags) $(debugflags) $(warnflags)
81
+ cxxflags =
81
82
  optflags = -O3
82
83
  debugflags = -ggdb3
83
- warnflags = -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -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 -Wextra-tokens
84
+ warnflags = -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable
84
85
  cppflags =
85
- CCDLFLAGS = -fno-common
86
- CFLAGS = $(CCDLFLAGS) $(cflags) -fno-common -pipe -O3 -std=c99 $(ARCH_FLAG)
86
+ CCDLFLAGS = -fPIC
87
+ CFLAGS = $(CCDLFLAGS) $(cflags) -fPIC -O3 -std=c99 $(ARCH_FLAG)
87
88
  INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
88
89
  DEFS =
89
- CPPFLAGS = -DHAVE_RB_SYM2STR -DHAVE_RB_STR_CAT_CSTR -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags)
90
- CXXFLAGS = $(CCDLFLAGS) $(cxxflags) $(ARCH_FLAG)
91
- ldflags = -L. -fstack-protector-strong -L/usr/local/lib -L/opt/local/lib
92
- dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -L/opt/local/lib
90
+ CPPFLAGS = -DHAVE_RB_SYM2STR -DHAVE_RB_STR_CAT_CSTR -I/home/samuel/.rbenv/versions/2.7.0/include $(DEFS) $(cppflags)
91
+ CXXFLAGS = $(CCDLFLAGS) -g -O2 $(ARCH_FLAG)
92
+ ldflags = -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -fstack-protector-strong -rdynamic -Wl,-export-dynamic
93
+ dldflags = -L/home/samuel/.rbenv/versions/2.7.0/lib -Wl,--compress-debug-sections=zlib
93
94
  ARCH_FLAG =
94
95
  DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
95
- LDSHARED = $(CC) -dynamic -bundle
96
- LDSHAREDXX = $(CXX) -dynamic -bundle
97
- AR = libtool -static
96
+ LDSHARED = $(CC) -shared
97
+ LDSHAREDXX = $(CXX) -shared
98
+ AR = ar
98
99
  EXEEXT =
99
100
 
100
101
  RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)
101
- RUBY_SO_NAME = ruby.2.6
102
+ RUBY_SO_NAME = ruby
102
103
  RUBYW_INSTALL_NAME =
103
104
  RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
104
105
  RUBYW_BASE_NAME = rubyw
105
106
  RUBY_BASE_NAME = ruby
106
107
 
107
- arch = x86_64-darwin18
108
+ arch = x86_64-linux
108
109
  sitearch = $(arch)
109
- ruby_version = 2.6.0
110
+ ruby_version = 2.7.0
110
111
  ruby = $(bindir)/$(RUBY_BASE_NAME)
111
112
  RUBY = $(ruby)
112
113
  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
113
114
 
114
115
  RM = rm -f
115
116
  RM_RF = $(RUBY) -run -e rm -- -rf
116
- RMDIRS = rmdir -p
117
- MAKEDIRS = /opt/local/bin/gmkdir -p
118
- INSTALL = /opt/local/bin/ginstall -c
117
+ RMDIRS = rmdir --ignore-fail-on-non-empty -p
118
+ MAKEDIRS = /usr/bin/mkdir -p
119
+ INSTALL = /usr/bin/install -c
119
120
  INSTALL_PROG = $(INSTALL) -m 0755
120
121
  INSTALL_DATA = $(INSTALL) -m 644
121
122
  COPY = cp
@@ -124,8 +125,8 @@ TOUCH = exit >
124
125
  #### End of system configuration section. ####
125
126
 
126
127
  preload =
127
- libpath = . $(libdir) /opt/local/lib
128
- LIBPATH = -L. -L$(libdir) -L/opt/local/lib
128
+ libpath = . $(libdir)
129
+ LIBPATH = -L. -L$(libdir) -Wl,-rpath,$(libdir)
129
130
  DEFFILE =
130
131
 
131
132
  CLEANFILES = mkmf.log
@@ -136,16 +137,16 @@ extout =
136
137
  extout_prefix =
137
138
  target_prefix = /trenni
138
139
  LOCAL_LIBS =
139
- LIBS = $(LIBRUBYARG_SHARED)
140
- ORIG_SRCS = escape.c markup.c tag.c template.c trenni.c
140
+ LIBS = $(LIBRUBYARG_SHARED) -lm -lc
141
+ ORIG_SRCS = escape.c markup.c query.c tag.c template.c trenni.c
141
142
  SRCS = $(ORIG_SRCS)
142
- OBJS = escape.o markup.o tag.o template.o trenni.o
143
- HDRS = $(srcdir)/tag.h $(srcdir)/markup.h $(srcdir)/escape.h $(srcdir)/trenni.h $(srcdir)/template.h
143
+ OBJS = escape.o markup.o query.o tag.o template.o trenni.o
144
+ HDRS = $(srcdir)/tag.h $(srcdir)/trenni.h $(srcdir)/markup.h $(srcdir)/query.h $(srcdir)/escape.h $(srcdir)/template.h
144
145
  LOCAL_HDRS =
145
146
  TARGET = trenni
146
147
  TARGET_NAME = trenni
147
148
  TARGET_ENTRY = Init_$(TARGET_NAME)
148
- DLLIB = $(TARGET).bundle
149
+ DLLIB = $(TARGET).so
149
150
  EXTSTATIC =
150
151
  STATIC_LIB =
151
152
 
@@ -259,7 +260,6 @@ $(TARGET_SO): $(OBJS) Makefile
259
260
  $(ECHO) linking shared-object trenni/$(DLLIB)
260
261
  -$(Q)$(RM) $(@)
261
262
  $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
262
- $(Q) $(POSTLINK)
263
263
 
264
264
 
265
265
 
@@ -0,0 +1,113 @@
1
+ have_func: checking for rb_sym2str()... -------------------- yes
2
+
3
+ "gcc -o conftest -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/x86_64-linux -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/ruby/backward -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0 -I../../../../trenni -I/home/samuel/.rbenv/versions/2.7.0/include -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L/home/samuel/.rbenv/versions/2.7.0/lib -lruby -lm -lc"
4
+ checked program was:
5
+ /* begin */
6
+ 1: #include "ruby.h"
7
+ 2:
8
+ 3: int main(int argc, char **argv)
9
+ 4: {
10
+ 5: return !!argv[argc];
11
+ 6: }
12
+ /* end */
13
+
14
+ "gcc -o conftest -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/x86_64-linux -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/ruby/backward -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0 -I../../../../trenni -I/home/samuel/.rbenv/versions/2.7.0/include -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L/home/samuel/.rbenv/versions/2.7.0/lib -lruby -lm -lc"
15
+ checked program was:
16
+ /* begin */
17
+ 1: #include "ruby.h"
18
+ 2:
19
+ 3: /*top*/
20
+ 4: extern int t(void);
21
+ 5: int main(int argc, char **argv)
22
+ 6: {
23
+ 7: if (argc > 1000000) {
24
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
25
+ 9: printf("%d", (*tp)());
26
+ 10: }
27
+ 11:
28
+ 12: return !!argv[argc];
29
+ 13: }
30
+ 14: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_sym2str; return !p; }
31
+ /* end */
32
+
33
+ --------------------
34
+
35
+ have_func: checking for rb_str_cat_cstr()... -------------------- yes
36
+
37
+ "gcc -o conftest -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/x86_64-linux -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/ruby/backward -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0 -I../../../../trenni -I/home/samuel/.rbenv/versions/2.7.0/include -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L/home/samuel/.rbenv/versions/2.7.0/lib -lruby -lm -lc"
38
+ checked program was:
39
+ /* begin */
40
+ 1: #include "ruby.h"
41
+ 2:
42
+ 3: /*top*/
43
+ 4: extern int t(void);
44
+ 5: int main(int argc, char **argv)
45
+ 6: {
46
+ 7: if (argc > 1000000) {
47
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
48
+ 9: printf("%d", (*tp)());
49
+ 10: }
50
+ 11:
51
+ 12: return !!argv[argc];
52
+ 13: }
53
+ 14: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_str_cat_cstr; return !p; }
54
+ /* end */
55
+
56
+ --------------------
57
+
58
+ have_func: checking for rb_str_reserve()... -------------------- no
59
+
60
+ "gcc -o conftest -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/x86_64-linux -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/ruby/backward -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0 -I../../../../trenni -I/home/samuel/.rbenv/versions/2.7.0/include -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L/home/samuel/.rbenv/versions/2.7.0/lib -lruby -lm -lc"
61
+ conftest.c: In function ‘t’:
62
+ conftest.c:14:57: error: ‘rb_str_reserve’ undeclared (first use in this function); did you mean ‘rb_str_resize’?
63
+ 14 | int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_str_reserve; return !p; }
64
+ | ^~~~~~~~~~~~~~
65
+ | rb_str_resize
66
+ conftest.c:14:57: note: each undeclared identifier is reported only once for each function it appears in
67
+ conftest.c: At top level:
68
+ cc1: warning: unrecognized command line option ‘-Wno-self-assign’
69
+ cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
70
+ cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
71
+ checked program was:
72
+ /* begin */
73
+ 1: #include "ruby.h"
74
+ 2:
75
+ 3: /*top*/
76
+ 4: extern int t(void);
77
+ 5: int main(int argc, char **argv)
78
+ 6: {
79
+ 7: if (argc > 1000000) {
80
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
81
+ 9: printf("%d", (*tp)());
82
+ 10: }
83
+ 11:
84
+ 12: return !!argv[argc];
85
+ 13: }
86
+ 14: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_str_reserve; return !p; }
87
+ /* end */
88
+
89
+ "gcc -o conftest -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/x86_64-linux -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0/ruby/backward -I/home/samuel/.rbenv/versions/2.7.0/include/ruby-2.7.0 -I../../../../trenni -I/home/samuel/.rbenv/versions/2.7.0/include -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -fPIC -O3 -std=c99 conftest.c -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L. -L/home/samuel/.rbenv/versions/2.7.0/lib -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rbenv/versions/2.7.0/lib -L/home/samuel/.rbenv/versions/2.7.0/lib -lruby -lm -lc"
90
+ /usr/bin/ld: /tmp/ccwY71Wz.o: in function `t':
91
+ /home/samuel/Documents/ioquatix/trenni/ext/tmp/x86_64-linux/trenni/2.7.0/conftest.c:15: undefined reference to `rb_str_reserve'
92
+ collect2: error: ld returned 1 exit status
93
+ checked program was:
94
+ /* begin */
95
+ 1: #include "ruby.h"
96
+ 2:
97
+ 3: /*top*/
98
+ 4: extern int t(void);
99
+ 5: int main(int argc, char **argv)
100
+ 6: {
101
+ 7: if (argc > 1000000) {
102
+ 8: int (* volatile tp)(void)=(int (*)(void))&t;
103
+ 9: printf("%d", (*tp)());
104
+ 10: }
105
+ 11:
106
+ 12: return !!argv[argc];
107
+ 13: }
108
+ 14: extern void rb_str_reserve();
109
+ 15: int t(void) { rb_str_reserve(); return 0; }
110
+ /* end */
111
+
112
+ --------------------
113
+