From 35f17d18bdd3cac593afac37d2086d4be60af11a Mon Sep 17 00:00:00 2001 From: "Michael D. Lowis" Date: Wed, 16 Jul 2014 18:41:48 -0400 Subject: [PATCH] Initial setup of build scripts --- Gemfile | 2 ++ Gemfile.lock | 13 +++++++++++++ Rakefile | 32 ++++++++++++++++++++++++++++++++ docs/manual.md | 0 source/main.c | 10 ++++++++++ 5 files changed, 57 insertions(+) create mode 100644 Gemfile create mode 100644 Gemfile.lock create mode 100644 Rakefile create mode 100644 docs/manual.md create mode 100644 source/main.c diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..f46be81 --- /dev/null +++ b/Gemfile @@ -0,0 +1,2 @@ +gem "rake" +gem "rscons" diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..2f577eb --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,13 @@ +GEM + specs: + json (1.8.1) + rake (10.3.2) + rscons (1.6.0) + json (~> 1.0) + +PLATFORMS + ruby + +DEPENDENCIES + rake + rscons diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..c9666bb --- /dev/null +++ b/Rakefile @@ -0,0 +1,32 @@ +#------------------------------------------------------------------------------ +# Verify and Load Dependencies +#------------------------------------------------------------------------------ +require "bundler" +begin + Bundler.setup(:default, :development) +rescue Bundler::BundlerError => e + raise LoadError.new("Unable to Bundler.setup(): You probably need to run `bundle install`: #{e.message}") +end +require 'rscons' + +#------------------------------------------------------------------------------ +# Build Environment +#------------------------------------------------------------------------------ +Env = Rscons::Environment.new do |env| + env['CFLAGS'] += ['-Wall', '-Werror'] + env['LIBS'] = ['ncurses'] +end +at_exit { Env.process } + +#------------------------------------------------------------------------------ +# Rake Tasks +#------------------------------------------------------------------------------ +#task :default + +desc "Build the AFM release binary" +task :build do + Env.Program('build/afm', Dir['source/**/*.c']) +end + +desc "Remove all generate artifacts and directories" +task(:clean) { Rscons.clean } diff --git a/docs/manual.md b/docs/manual.md new file mode 100644 index 0000000..e69de29 diff --git a/source/main.c b/source/main.c new file mode 100644 index 0000000..4e7ed5a --- /dev/null +++ b/source/main.c @@ -0,0 +1,10 @@ +#include + +int main(int argc, char** argv) { + initscr(); + printw("Hello World !!!"); + refresh(); + getch(); + endwin(); + return 0; +} -- 2.49.0