mirror of
https://github.com/k0kubun/xremap
synced 2024-11-02 03:40:25 +00:00
Create Makefile to generate xkremap binary
This commit is contained in:
parent
0166329028
commit
5a78ce246c
5
.gitignore
vendored
5
.gitignore
vendored
@ -1,3 +1,2 @@
|
||||
xkremap
|
||||
mruby/
|
||||
*.o
|
||||
/xkremap
|
||||
/mruby
|
||||
|
6
Makefile
6
Makefile
@ -6,12 +6,12 @@ OBJS=src/main.o
|
||||
|
||||
all: xkremap
|
||||
|
||||
xkremap: $(OBJS)
|
||||
$(LD) $(OBJS) $(LDFLAGS) -o $@
|
||||
xkremap: mruby/build/host/bin/xkremap
|
||||
cp mruby/build/host/bin/xkremap xkremap
|
||||
|
||||
mruby:
|
||||
curl -L --fail --retry 3 --retry-delay 1 https://github.com/mruby/mruby/archive/1.2.0.tar.gz -s -o - | tar zxf -
|
||||
mv mruby-1.2.0 $@
|
||||
|
||||
mruby/build/host/bin/mruby: mruby
|
||||
mruby/build/host/bin/xkremap: mruby build_config.rb tools/xkremap/xkremap.c
|
||||
cd mruby && MRUBY_CONFIG="$(current_dir)/build_config.rb" make
|
||||
|
139
build_config.rb
139
build_config.rb
@ -1,138 +1,9 @@
|
||||
MRuby::Build.new do |conf|
|
||||
# load specific toolchain settings
|
||||
|
||||
# Gets set by the VS command prompts.
|
||||
if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
|
||||
toolchain :visualcpp
|
||||
else
|
||||
toolchain :gcc
|
||||
|
||||
conf.gem File.expand_path(File.dirname(__FILE__))
|
||||
conf.instance_eval do
|
||||
# Allow showing backtrace.
|
||||
@mrbc.compile_options += ' -g'
|
||||
end
|
||||
|
||||
enable_debug
|
||||
|
||||
# Use mrbgems
|
||||
# conf.gem 'examples/mrbgems/ruby_extension_example'
|
||||
# conf.gem 'examples/mrbgems/c_extension_example' do |g|
|
||||
# g.cc.flags << '-g' # append cflags in this gem
|
||||
# end
|
||||
# conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
|
||||
# conf.gem :github => 'masuidrive/mrbgems-example', :checksum_hash => '76518e8aecd131d047378448ac8055fa29d974a9'
|
||||
# conf.gem :git => 'git@github.com:masuidrive/mrbgems-example.git', :branch => 'master', :options => '-v'
|
||||
|
||||
# include the default GEMs
|
||||
conf.gembox 'default'
|
||||
# C compiler settings
|
||||
# conf.cc do |cc|
|
||||
# cc.command = ENV['CC'] || 'gcc'
|
||||
# cc.flags = [ENV['CFLAGS'] || %w()]
|
||||
# cc.include_paths = ["#{root}/include"]
|
||||
# cc.defines = %w(DISABLE_GEMS)
|
||||
# cc.option_include_path = '-I%s'
|
||||
# cc.option_define = '-D%s'
|
||||
# cc.compile_options = "%{flags} -MMD -o %{outfile} -c %{infile}"
|
||||
# end
|
||||
|
||||
# mrbc settings
|
||||
# conf.mrbc do |mrbc|
|
||||
# mrbc.compile_options = "-g -B%{funcname} -o-" # The -g option is required for line numbers
|
||||
# end
|
||||
|
||||
# Linker settings
|
||||
# conf.linker do |linker|
|
||||
# linker.command = ENV['LD'] || 'gcc'
|
||||
# linker.flags = [ENV['LDFLAGS'] || []]
|
||||
# linker.flags_before_libraries = []
|
||||
# linker.libraries = %w()
|
||||
# linker.flags_after_libraries = []
|
||||
# linker.library_paths = []
|
||||
# linker.option_library = '-l%s'
|
||||
# linker.option_library_path = '-L%s'
|
||||
# linker.link_options = "%{flags} -o %{outfile} %{objs} %{libs}"
|
||||
# end
|
||||
|
||||
# Archiver settings
|
||||
# conf.archiver do |archiver|
|
||||
# archiver.command = ENV['AR'] || 'ar'
|
||||
# archiver.archive_options = 'rs %{outfile} %{objs}'
|
||||
# end
|
||||
|
||||
# Parser generator settings
|
||||
# conf.yacc do |yacc|
|
||||
# yacc.command = ENV['YACC'] || 'bison'
|
||||
# yacc.compile_options = '-o %{outfile} %{infile}'
|
||||
# end
|
||||
|
||||
# gperf settings
|
||||
# conf.gperf do |gperf|
|
||||
# gperf.command = 'gperf'
|
||||
# gperf.compile_options = '-L ANSI-C -C -p -j1 -i 1 -g -o -t -N mrb_reserved_word -k"1,3,$" %{infile} > %{outfile}'
|
||||
# end
|
||||
|
||||
# file extensions
|
||||
# conf.exts do |exts|
|
||||
# exts.object = '.o'
|
||||
# exts.executable = '' # '.exe' if Windows
|
||||
# exts.library = '.a'
|
||||
# end
|
||||
|
||||
# file separetor
|
||||
# conf.file_separator = '/'
|
||||
|
||||
# bintest
|
||||
# conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('host-debug') do |conf|
|
||||
# load specific toolchain settings
|
||||
|
||||
# Gets set by the VS command prompts.
|
||||
if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
|
||||
toolchain :visualcpp
|
||||
else
|
||||
toolchain :gcc
|
||||
end
|
||||
|
||||
enable_debug
|
||||
|
||||
# include the default GEMs
|
||||
conf.gembox 'default'
|
||||
|
||||
# C compiler settings
|
||||
conf.cc.defines = %w(MRB_ENABLE_DEBUG_HOOK)
|
||||
|
||||
# Generate mruby debugger command (require mruby-eval)
|
||||
conf.gem :core => "mruby-bin-debugger"
|
||||
|
||||
# bintest
|
||||
# conf.enable_bintest
|
||||
end
|
||||
|
||||
MRuby::Build.new('test') do |conf|
|
||||
# Gets set by the VS command prompts.
|
||||
if ENV['VisualStudioVersion'] || ENV['VSINSTALLDIR']
|
||||
toolchain :visualcpp
|
||||
else
|
||||
toolchain :gcc
|
||||
end
|
||||
|
||||
enable_debug
|
||||
conf.enable_bintest
|
||||
conf.enable_test
|
||||
|
||||
conf.gembox 'default'
|
||||
end
|
||||
|
||||
# Define cross build settings
|
||||
# MRuby::CrossBuild.new('32bit') do |conf|
|
||||
# toolchain :gcc
|
||||
#
|
||||
# conf.cc.flags << "-m32"
|
||||
# conf.linker.flags << "-m32"
|
||||
#
|
||||
# conf.build_mrbtest_lib_only
|
||||
#
|
||||
# conf.gem 'examples/mrbgems/c_and_ruby_extension_example'
|
||||
#
|
||||
# conf.test_runner.command = 'env'
|
||||
#
|
||||
# end
|
||||
|
6
mrbgem.rake
Normal file
6
mrbgem.rake
Normal file
@ -0,0 +1,6 @@
|
||||
MRuby::Gem::Specification.new('xkremap') do |spec|
|
||||
spec.license = 'MIT'
|
||||
spec.author = 'Takashi Kokubun'
|
||||
spec.summary = 'Dynamic key remapper for X Window System'
|
||||
spec.bins = ['xkremap']
|
||||
end
|
8
tools/xkremap/xkremap.c
Normal file
8
tools/xkremap/xkremap.c
Normal file
@ -0,0 +1,8 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
printf("Hello xkremap!\n");
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user