bestliner 0.1.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 +7 -0
- data/.gitignore +15 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +25 -0
- data/LICENSE +36 -0
- data/README.md +65 -0
- data/Rakefile +13 -0
- data/bestliner.gemspec +24 -0
- data/ext/bestliner/Makefile +266 -0
- data/ext/bestliner/bestline.c +3578 -0
- data/ext/bestliner/bestline.h +39 -0
- data/ext/bestliner/bestliner.c +136 -0
- data/ext/bestliner/extconf.rb +4 -0
- data/lib/bestliner/version.rb +5 -0
- data/lib/bestliner.rb +131 -0
- metadata +88 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 9bbcbfcd91bca699918d840ebc89558a5ea557d17ad08b63013e568414ea085f
|
4
|
+
data.tar.gz: afb98ed7a16d7049e71d133e43ec52c73cd867207825d079661b2b39accc9b21
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d63d5bcfde5a26e01f5372fe6eacc67daf9b2857e87de0be5f988e20becf8d024122903ddb8d380826450c83077798572d5da64134ccd65ee79a991f4619e2be
|
7
|
+
data.tar.gz: e5e7c6891a08cb18e27fd6674d931dc935840c214948a3b9ae4d4400b5e4237662eb78902eab44197c86b0af6bdfa3e0f66de556db35f083b0b8dd6be159a2ac
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
bestliner (0.1.0)
|
5
|
+
|
6
|
+
GEM
|
7
|
+
remote: https://rubygems.org/
|
8
|
+
specs:
|
9
|
+
rake (13.0.6)
|
10
|
+
rake-compiler (1.2.0)
|
11
|
+
rake
|
12
|
+
webrick (1.7.0)
|
13
|
+
yard (0.9.28)
|
14
|
+
webrick (~> 1.7.0)
|
15
|
+
|
16
|
+
PLATFORMS
|
17
|
+
x86_64-linux
|
18
|
+
|
19
|
+
DEPENDENCIES
|
20
|
+
bestliner!
|
21
|
+
rake-compiler
|
22
|
+
yard
|
23
|
+
|
24
|
+
BUNDLED WITH
|
25
|
+
2.3.18
|
data/LICENSE
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
Bestliner is released under the 2-clause BSD license.
|
2
|
+
|
3
|
+
Bestliner
|
4
|
+
|
5
|
+
Copyright (c) 2022 Michael Camilleri <mike@inqk.net>
|
6
|
+
|
7
|
+
Bestline
|
8
|
+
|
9
|
+
Copyright (c) 2018-2021 Justine Tunney <jtunney@gmail.com>
|
10
|
+
Copyright (c) 2010-2016 Salvatore Sanfilippo <antirez@gmail.com>
|
11
|
+
Copyright (c) 2010-2013 Pieter Noordhuis <pcnoordhuis@gmail.com>
|
12
|
+
|
13
|
+
All rights reserved.
|
14
|
+
|
15
|
+
Redistribution and use in source and binary forms, with or without
|
16
|
+
modification, are permitted provided that the following conditions are
|
17
|
+
met:
|
18
|
+
|
19
|
+
* Redistributions of source code must retain the above copyright
|
20
|
+
notice, this list of conditions and the following disclaimer.
|
21
|
+
|
22
|
+
* Redistributions in binary form must reproduce the above copyright
|
23
|
+
notice, this list of conditions and the following disclaimer in the
|
24
|
+
documentation and/or other materials provided with the distribution.
|
25
|
+
|
26
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
27
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
28
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
29
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
30
|
+
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
31
|
+
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
32
|
+
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
33
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
34
|
+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
35
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
36
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/README.md
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
# Bestliner
|
2
|
+
|
3
|
+
[![Gem Version][gem-badge]][gem-link]
|
4
|
+
|
5
|
+
[gem-badge]: https://badge.fury.io/rb/bestliner.svg
|
6
|
+
[gem-link]: https://rubygems.org/gems/bestliner
|
7
|
+
|
8
|
+
Bestliner is a Ruby wrapper around the [bestline library][bestline] by Justine
|
9
|
+
Tunney. The bestline library is written in portable ANSI C99 and provides
|
10
|
+
interactive pseudoteletypewriter command sessions using ANSI Standard X3.64
|
11
|
+
control sequences.
|
12
|
+
|
13
|
+
Bestliner supports Emacs-style editing shortcuts, a searchable history,
|
14
|
+
completion and hint support via callbacks and UTF-8 editing.
|
15
|
+
|
16
|
+
[bestline]: https://github.com/jart/bestline
|
17
|
+
|
18
|
+
## Example
|
19
|
+
|
20
|
+
Here's a prompt that echos the input back to the user:
|
21
|
+
|
22
|
+
```ruby
|
23
|
+
require "bestliner"
|
24
|
+
|
25
|
+
while line = Bestliner.bestline("> ") do
|
26
|
+
puts line
|
27
|
+
end
|
28
|
+
```
|
29
|
+
|
30
|
+
The prompt includes Emacs-style shortcuts, a searchable history and UTF-8
|
31
|
+
editing all out of the box courtesy of the wrapped bestline library.
|
32
|
+
|
33
|
+
## Installation
|
34
|
+
|
35
|
+
Bestliner is available as a gem:
|
36
|
+
|
37
|
+
```shell
|
38
|
+
$ gem install bestliner
|
39
|
+
```
|
40
|
+
|
41
|
+
## Documentation
|
42
|
+
|
43
|
+
More information is available in the [docs][].
|
44
|
+
|
45
|
+
[docs]: https://rubydoc.info/github/pyrmont/bestliner
|
46
|
+
|
47
|
+
## Bugs
|
48
|
+
|
49
|
+
Found a bug? I'd love to know about it. The best way is to report it in the
|
50
|
+
[Issues section][ghi] on GitHub.
|
51
|
+
|
52
|
+
[ghi]: https://github.com/pyrmont/bestliner/issues
|
53
|
+
|
54
|
+
## Versioning
|
55
|
+
|
56
|
+
Bestliner uses [Semantic Versioning 2.0.0][sv2].
|
57
|
+
|
58
|
+
[sv2]: http://semver.org/
|
59
|
+
|
60
|
+
## Licence
|
61
|
+
|
62
|
+
Bestliner is licensed under the BSD-2 licence. See [LICENSE][] for more
|
63
|
+
details.
|
64
|
+
|
65
|
+
[LICENSE]: https://github.com/pyrmont/bestliner/blob/master/LICENSE
|
data/Rakefile
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
2
|
+
require "rake/extensiontask"
|
3
|
+
require "yard"
|
4
|
+
|
5
|
+
Rake::ExtensionTask.new("bestliner") do |ext|
|
6
|
+
ext.lib_dir = "lib/bestliner"
|
7
|
+
end
|
8
|
+
|
9
|
+
YARD::Rake::YardocTask.new do |task|
|
10
|
+
task.files = ["lib/**/*.rb"]
|
11
|
+
end
|
12
|
+
|
13
|
+
task default: [:clean, :compile]
|
data/bestliner.gemspec
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "./lib/bestliner/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "bestliner"
|
7
|
+
s.summary = "Ruby wrapper for bestline, a C library for reading user input"
|
8
|
+
s.description = <<~eof
|
9
|
+
Bestliner is a Ruby wrapper around bestline, a C library for interactive
|
10
|
+
pseudoteletypewriter command sessions using ANSI Standard X3.64 control
|
11
|
+
sequences. Bestliner supports Emacs-style editing shortcuts, a searchable
|
12
|
+
history, completion and hint support via callbacks and UTF-8 editing.
|
13
|
+
eof
|
14
|
+
s.version = Bestliner::VERSION
|
15
|
+
s.author = "Michael Camilleri"
|
16
|
+
s.email = "mike@inqk.net"
|
17
|
+
s.homepage = "https://github.com/pyrmont/bestliner"
|
18
|
+
s.files = `git ls-files`.strip.split(/\s+/).reject {|f| f.match(%r{^test/}) }
|
19
|
+
s.require_paths = ["lib"]
|
20
|
+
s.license = "BSD-2"
|
21
|
+
|
22
|
+
s.add_development_dependency "rake-compiler"
|
23
|
+
s.add_development_dependency "yard"
|
24
|
+
end
|
@@ -0,0 +1,266 @@
|
|
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
|
+
ECHO1 = $(V:1=@ :)
|
9
|
+
ECHO = $(ECHO1:0=@ echo)
|
10
|
+
NULLCMD = :
|
11
|
+
|
12
|
+
#### Start of system configuration section. ####
|
13
|
+
|
14
|
+
srcdir = .
|
15
|
+
topdir = /usr/include/ruby-3.0.0
|
16
|
+
hdrdir = $(topdir)
|
17
|
+
arch_hdrdir = /usr/include/x86_64-linux-gnu/ruby-3.0.0
|
18
|
+
PATH_SEPARATOR = :
|
19
|
+
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
|
20
|
+
prefix = $(DESTDIR)/usr
|
21
|
+
rubysitearchprefix = $(sitearchlibdir)/$(RUBY_BASE_NAME)
|
22
|
+
rubyarchprefix = $(archlibdir)/$(RUBY_BASE_NAME)
|
23
|
+
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
|
24
|
+
exec_prefix = $(prefix)
|
25
|
+
vendorarchhdrdir = $(sitearchincludedir)/$(RUBY_VERSION_NAME)/vendor_ruby
|
26
|
+
sitearchhdrdir = $(sitearchincludedir)/$(RUBY_VERSION_NAME)/site_ruby
|
27
|
+
rubyarchhdrdir = $(archincludedir)/$(RUBY_VERSION_NAME)
|
28
|
+
vendorhdrdir = $(rubyhdrdir)/vendor_ruby
|
29
|
+
sitehdrdir = $(rubyhdrdir)/site_ruby
|
30
|
+
rubyhdrdir = $(includedir)/$(RUBY_VERSION_NAME)
|
31
|
+
vendorarchdir = $(rubysitearchprefix)/vendor_ruby/$(ruby_version)
|
32
|
+
vendorlibdir = $(vendordir)/$(ruby_version)
|
33
|
+
vendordir = $(rubylibprefix)/vendor_ruby
|
34
|
+
sitearchdir = $(DESTDIR)/usr/local/lib/x86_64-linux-gnu/site_ruby
|
35
|
+
sitelibdir = $(sitedir)/$(ruby_version)
|
36
|
+
sitedir = $(DESTDIR)/usr/local/lib/site_ruby
|
37
|
+
rubyarchdir = $(rubyarchprefix)/$(ruby_version)
|
38
|
+
rubylibdir = $(rubylibprefix)/$(ruby_version)
|
39
|
+
sitearchincludedir = $(includedir)/$(sitearch)
|
40
|
+
archincludedir = $(includedir)/$(arch)
|
41
|
+
sitearchlibdir = $(libdir)/$(sitearch)
|
42
|
+
archlibdir = $(libdir)/$(arch)
|
43
|
+
ridir = $(datarootdir)/$(RI_BASE_NAME)
|
44
|
+
mandir = $(datarootdir)/man
|
45
|
+
localedir = $(datarootdir)/locale
|
46
|
+
libdir = $(exec_prefix)/lib
|
47
|
+
psdir = $(docdir)
|
48
|
+
pdfdir = $(docdir)
|
49
|
+
dvidir = $(docdir)
|
50
|
+
htmldir = $(docdir)
|
51
|
+
infodir = $(datarootdir)/info
|
52
|
+
docdir = $(datarootdir)/doc/$(PACKAGE)
|
53
|
+
oldincludedir = $(DESTDIR)/usr/include
|
54
|
+
includedir = $(prefix)/include
|
55
|
+
runstatedir = $(DESTDIR)/var/run
|
56
|
+
localstatedir = $(DESTDIR)/var
|
57
|
+
sharedstatedir = $(prefix)/com
|
58
|
+
sysconfdir = $(DESTDIR)/etc
|
59
|
+
datadir = $(datarootdir)
|
60
|
+
datarootdir = $(prefix)/share
|
61
|
+
libexecdir = $(exec_prefix)/libexec
|
62
|
+
sbindir = $(exec_prefix)/sbin
|
63
|
+
bindir = $(exec_prefix)/bin
|
64
|
+
archdir = $(rubyarchdir)
|
65
|
+
|
66
|
+
|
67
|
+
CC_WRAPPER =
|
68
|
+
CC = x86_64-linux-gnu-gcc
|
69
|
+
CXX = x86_64-linux-gnu-g++
|
70
|
+
LIBRUBY = $(LIBRUBY_SO)
|
71
|
+
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
|
72
|
+
LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
|
73
|
+
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static $(MAINLIBS)
|
74
|
+
empty =
|
75
|
+
OUTFLAG = -o $(empty)
|
76
|
+
COUTFLAG = -o $(empty)
|
77
|
+
CSRCFLAG = $(empty)
|
78
|
+
|
79
|
+
RUBY_EXTCONF_H =
|
80
|
+
cflags = $(optflags) $(debugflags) $(warnflags)
|
81
|
+
cxxflags =
|
82
|
+
optflags = -O3
|
83
|
+
debugflags = -ggdb3
|
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
|
85
|
+
cppflags =
|
86
|
+
CCDLFLAGS = -fPIC
|
87
|
+
CFLAGS = $(CCDLFLAGS) -g -O2 -ffile-prefix-map=/build/ruby3.0-ENw8CZ/ruby3.0-3.0.4=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC $(ARCH_FLAG)
|
88
|
+
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
|
89
|
+
DEFS =
|
90
|
+
CPPFLAGS = -DHAVE_BESTLINE_H -Wdate-time -D_FORTIFY_SOURCE=2 $(DEFS) $(cppflags)
|
91
|
+
CXXFLAGS = $(CCDLFLAGS) -g -O2 -ffile-prefix-map=/build/ruby3.0-ENw8CZ/ruby3.0-3.0.4=. -fstack-protector-strong -Wformat -Werror=format-security $(ARCH_FLAG)
|
92
|
+
ldflags = -L. -Wl,-z,relro -Wl,-z,now -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed
|
93
|
+
dldflags = -Wl,-z,relro -Wl,-z,now
|
94
|
+
ARCH_FLAG =
|
95
|
+
DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
|
96
|
+
LDSHARED = $(CC) -shared
|
97
|
+
LDSHAREDXX = $(CXX) -shared
|
98
|
+
AR = x86_64-linux-gnu-gcc-ar
|
99
|
+
EXEEXT =
|
100
|
+
|
101
|
+
RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)3.0
|
102
|
+
RUBY_SO_NAME = ruby-3.0
|
103
|
+
RUBYW_INSTALL_NAME =
|
104
|
+
RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
|
105
|
+
RUBYW_BASE_NAME = rubyw
|
106
|
+
RUBY_BASE_NAME = ruby
|
107
|
+
|
108
|
+
arch = x86_64-linux-gnu
|
109
|
+
sitearch = $(arch)
|
110
|
+
ruby_version = 3.0.0
|
111
|
+
ruby = $(bindir)/$(RUBY_BASE_NAME)3.0
|
112
|
+
RUBY = $(ruby)
|
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
|
114
|
+
|
115
|
+
RM = rm -f
|
116
|
+
RM_RF = $(RUBY) -run -e rm -- -rf
|
117
|
+
RMDIRS = rmdir --ignore-fail-on-non-empty -p
|
118
|
+
MAKEDIRS = /bin/mkdir -p
|
119
|
+
INSTALL = /usr/bin/install -c
|
120
|
+
INSTALL_PROG = $(INSTALL) -m 0755
|
121
|
+
INSTALL_DATA = $(INSTALL) -m 644
|
122
|
+
COPY = cp
|
123
|
+
TOUCH = exit >
|
124
|
+
|
125
|
+
#### End of system configuration section. ####
|
126
|
+
|
127
|
+
preload =
|
128
|
+
libpath = . $(archlibdir)
|
129
|
+
LIBPATH = -L. -L$(archlibdir)
|
130
|
+
DEFFILE =
|
131
|
+
|
132
|
+
CLEANFILES = mkmf.log
|
133
|
+
DISTCLEANFILES =
|
134
|
+
DISTCLEANDIRS =
|
135
|
+
|
136
|
+
extout =
|
137
|
+
extout_prefix =
|
138
|
+
target_prefix = /bestliner
|
139
|
+
LOCAL_LIBS =
|
140
|
+
LIBS = $(LIBRUBYARG_SHARED) -lm -lc
|
141
|
+
ORIG_SRCS = bestline.c bestliner.c
|
142
|
+
SRCS = $(ORIG_SRCS)
|
143
|
+
OBJS = bestline.o bestliner.o
|
144
|
+
HDRS = $(srcdir)/bestline.h
|
145
|
+
LOCAL_HDRS =
|
146
|
+
TARGET = bestliner
|
147
|
+
TARGET_NAME = bestliner
|
148
|
+
TARGET_ENTRY = Init_$(TARGET_NAME)
|
149
|
+
DLLIB = $(TARGET).so
|
150
|
+
EXTSTATIC =
|
151
|
+
STATIC_LIB =
|
152
|
+
|
153
|
+
TIMESTAMP_DIR = .
|
154
|
+
BINDIR = $(bindir)
|
155
|
+
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
|
156
|
+
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
|
157
|
+
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
|
158
|
+
HDRDIR = $(sitehdrdir)$(target_prefix)
|
159
|
+
ARCHHDRDIR = $(sitearchhdrdir)$(target_prefix)
|
160
|
+
TARGET_SO_DIR =
|
161
|
+
TARGET_SO = $(TARGET_SO_DIR)$(DLLIB)
|
162
|
+
CLEANLIBS = $(TARGET_SO)
|
163
|
+
CLEANOBJS = *.o *.bak
|
164
|
+
|
165
|
+
all: $(DLLIB)
|
166
|
+
static: $(STATIC_LIB)
|
167
|
+
.PHONY: all install static install-so install-rb
|
168
|
+
.PHONY: clean clean-so clean-static clean-rb
|
169
|
+
|
170
|
+
clean-static::
|
171
|
+
clean-rb-default::
|
172
|
+
clean-rb::
|
173
|
+
clean-so::
|
174
|
+
clean: clean-so clean-static clean-rb-default clean-rb
|
175
|
+
-$(Q)$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time
|
176
|
+
|
177
|
+
distclean-rb-default::
|
178
|
+
distclean-rb::
|
179
|
+
distclean-so::
|
180
|
+
distclean-static::
|
181
|
+
distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb
|
182
|
+
-$(Q)$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
|
183
|
+
-$(Q)$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
|
184
|
+
-$(Q)$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true
|
185
|
+
|
186
|
+
realclean: distclean
|
187
|
+
install: install-so install-rb
|
188
|
+
|
189
|
+
install-so: $(DLLIB) $(TIMESTAMP_DIR)/.sitearchdir.-.bestliner.time
|
190
|
+
$(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
|
191
|
+
clean-static::
|
192
|
+
-$(Q)$(RM) $(STATIC_LIB)
|
193
|
+
install-rb: pre-install-rb do-install-rb install-rb-default
|
194
|
+
install-rb-default: pre-install-rb-default do-install-rb-default
|
195
|
+
pre-install-rb: Makefile
|
196
|
+
pre-install-rb-default: Makefile
|
197
|
+
do-install-rb:
|
198
|
+
do-install-rb-default:
|
199
|
+
pre-install-rb-default:
|
200
|
+
@$(NULLCMD)
|
201
|
+
$(TIMESTAMP_DIR)/.sitearchdir.-.bestliner.time:
|
202
|
+
$(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)
|
203
|
+
$(Q) $(TOUCH) $@
|
204
|
+
|
205
|
+
site-install: site-install-so site-install-rb
|
206
|
+
site-install-so: install-so
|
207
|
+
site-install-rb: install-rb
|
208
|
+
|
209
|
+
.SUFFIXES: .c .m .cc .mm .cxx .cpp .o .S
|
210
|
+
|
211
|
+
.cc.o:
|
212
|
+
$(ECHO) compiling $(<)
|
213
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
214
|
+
|
215
|
+
.cc.S:
|
216
|
+
$(ECHO) translating $(<)
|
217
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
218
|
+
|
219
|
+
.mm.o:
|
220
|
+
$(ECHO) compiling $(<)
|
221
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
222
|
+
|
223
|
+
.mm.S:
|
224
|
+
$(ECHO) translating $(<)
|
225
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
226
|
+
|
227
|
+
.cxx.o:
|
228
|
+
$(ECHO) compiling $(<)
|
229
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
230
|
+
|
231
|
+
.cxx.S:
|
232
|
+
$(ECHO) translating $(<)
|
233
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
234
|
+
|
235
|
+
.cpp.o:
|
236
|
+
$(ECHO) compiling $(<)
|
237
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
238
|
+
|
239
|
+
.cpp.S:
|
240
|
+
$(ECHO) translating $(<)
|
241
|
+
$(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
242
|
+
|
243
|
+
.c.o:
|
244
|
+
$(ECHO) compiling $(<)
|
245
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
246
|
+
|
247
|
+
.c.S:
|
248
|
+
$(ECHO) translating $(<)
|
249
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
250
|
+
|
251
|
+
.m.o:
|
252
|
+
$(ECHO) compiling $(<)
|
253
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$<
|
254
|
+
|
255
|
+
.m.S:
|
256
|
+
$(ECHO) translating $(<)
|
257
|
+
$(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$<
|
258
|
+
|
259
|
+
$(TARGET_SO): $(OBJS) Makefile
|
260
|
+
$(ECHO) linking shared-object bestliner/$(DLLIB)
|
261
|
+
-$(Q)$(RM) $(@)
|
262
|
+
$(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
|
263
|
+
|
264
|
+
|
265
|
+
|
266
|
+
$(OBJS): $(HDRS) $(ruby_headers)
|