paper_house 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +46 -12
  3. data/LICENSE +674 -0
  4. data/README.md +18 -10
  5. data/Rakefile +7 -117
  6. data/features/executable_task.feature +6 -0
  7. data/features/step_definitions/paper_house_steps.rb +1 -1
  8. data/features/support/env.rb +3 -32
  9. data/lib/paper_house/auto_depends.rb +4 -23
  10. data/lib/paper_house/build_failed.rb +18 -0
  11. data/lib/paper_house/build_task.rb +10 -24
  12. data/lib/paper_house/cc_options.rb +1 -23
  13. data/lib/paper_house/dependency.rb +1 -23
  14. data/lib/paper_house/executable_task.rb +1 -27
  15. data/lib/paper_house/library_task.rb +1 -23
  16. data/lib/paper_house/linker_options.rb +1 -23
  17. data/lib/paper_house/platform.rb +11 -32
  18. data/lib/paper_house/ruby_extension_task.rb +1 -27
  19. data/lib/paper_house/safe_popen.rb +1 -23
  20. data/lib/paper_house/shared_library_task.rb +1 -27
  21. data/lib/paper_house/static_library_task.rb +2 -24
  22. data/lib/paper_house/version.rb +2 -24
  23. data/lib/paper_house.rb +1 -23
  24. data/paper_house.gemspec +11 -9
  25. data/spec/paper_house/executable_task_spec.rb +26 -53
  26. data/spec/paper_house/ruby_extension_task_spec.rb +26 -53
  27. data/spec/paper_house/shared_library_task_spec.rb +30 -57
  28. data/spec/paper_house/static_library_task_spec.rb +41 -68
  29. data/spec/paper_house/version_spec.rb +1 -23
  30. data/spec/spec_helper.rb +3 -31
  31. metadata +24 -67
  32. data/.gitignore +0 -19
  33. data/.rspec +0 -3
  34. data/.rubocop.yml +0 -1
  35. data/.ruby-version +0 -1
  36. data/.travis.yml +0 -18
  37. data/Gemfile +0 -35
  38. data/Guardfile +0 -22
  39. data/cucumber.yml +0 -3
  40. data/examples/executable/.gitignore +0 -4
  41. data/examples/executable/Rakefile +0 -5
  42. data/examples/executable/Rakefile.llvm +0 -5
  43. data/examples/executable/hello.c +0 -7
  44. data/examples/executable_subdirs/.gitignore +0 -4
  45. data/examples/executable_subdirs/Rakefile +0 -11
  46. data/examples/executable_subdirs/includes/hello.h +0 -1
  47. data/examples/executable_subdirs/sources/hello.c +0 -6
  48. data/examples/executable_subdirs/sources/main.c +0 -8
  49. data/examples/ruby_extension/.gitignore +0 -5
  50. data/examples/ruby_extension/Rakefile +0 -5
  51. data/examples/ruby_extension/Rakefile.llvm +0 -5
  52. data/examples/ruby_extension/hello.c +0 -6
  53. data/examples/shared_library/.gitignore +0 -8
  54. data/examples/shared_library/Rakefile +0 -23
  55. data/examples/shared_library/Rakefile.llvm +0 -25
  56. data/examples/shared_library/hello.c +0 -6
  57. data/examples/shared_library/hello.h +0 -1
  58. data/examples/shared_library/main.c +0 -7
  59. data/examples/shared_library_subdirs/.gitignore +0 -8
  60. data/examples/shared_library_subdirs/Rakefile +0 -28
  61. data/examples/shared_library_subdirs/includes/hello.h +0 -1
  62. data/examples/shared_library_subdirs/sources/hello.c +0 -6
  63. data/examples/shared_library_subdirs/sources/main.c +0 -8
  64. data/examples/static_library/.gitignore +0 -7
  65. data/examples/static_library/Rakefile +0 -14
  66. data/examples/static_library/Rakefile.llvm +0 -14
  67. data/examples/static_library/hello.c +0 -6
  68. data/examples/static_library/hello.h +0 -1
  69. data/examples/static_library/main.c +0 -7
  70. data/examples/static_library_subdirs/.gitignore +0 -7
  71. data/examples/static_library_subdirs/Rakefile +0 -19
  72. data/examples/static_library_subdirs/includes/hello.h +0 -1
  73. data/examples/static_library_subdirs/sources/hello.c +0 -6
  74. data/examples/static_library_subdirs/sources/main.c +0 -8
  75. data/rake_simplecov_hook.rb +0 -24
  76. data/rubocop-todo.yml +0 -6
@@ -1,20 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # Copyright (C) 2013 NEC Corporation
4
- #
5
- # This program is free software; you can redistribute it and/or modify
6
- # it under the terms of the GNU General Public License, version 3, as
7
- # published by the Free Software Foundation.
8
- #
9
- # This program is distributed in the hope that it will be useful,
10
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- # GNU General Public License for more details.
13
- #
14
- # You should have received a copy of the GNU General Public License along
15
- # with this program; if not, write to the Free Software Foundation, Inc.,
16
- # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
- #
1
+ # encoding: utf-8
18
2
 
19
3
  require 'paper_house/version'
20
4
 
@@ -23,9 +7,3 @@ describe PaperHouse do
23
7
  it { expect(PaperHouse::VERSION).to match(/\A\d+\.\d+\.\d+\Z/) }
24
8
  end
25
9
  end
26
-
27
- ### Local variables:
28
- ### mode: Ruby
29
- ### coding: utf-8-unix
30
- ### indent-tabs-mode: nil
31
- ### End:
data/spec/spec_helper.rb CHANGED
@@ -1,25 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # Copyright (C) 2013 NEC Corporation
4
- #
5
- # This program is free software; you can redistribute it and/or modify
6
- # it under the terms of the GNU General Public License, version 3, as
7
- # published by the Free Software Foundation.
8
- #
9
- # This program is distributed in the hope that it will be useful,
10
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- # GNU General Public License for more details.
13
- #
14
- # You should have received a copy of the GNU General Public License along
15
- # with this program; if not, write to the Free Software Foundation, Inc.,
16
- # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17
- #
18
-
19
- require 'rubygems'
20
-
21
- require 'simplecov'
22
- SimpleCov.start
1
+ # encoding: utf-8
23
2
 
24
3
  require 'rake'
25
4
  require 'rspec'
@@ -30,12 +9,5 @@ RSpec.configure do | config |
30
9
  end
31
10
  end
32
11
 
33
- if ENV['TRAVIS']
34
- require 'coveralls'
35
- Coveralls.wear_merged!
36
- end
37
-
38
- ### Local variables:
39
- ### mode: Ruby
40
- ### indent-tabs-mode: nil
41
- ### End:
12
+ require 'coveralls'
13
+ Coveralls.wear_merged!
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paper_house
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yasuhito Takamiya
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-18 00:00:00.000000000 Z
11
+ date: 2014-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: POpen4
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: 10.1.0
33
+ version: 10.2.1
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ~>
39
39
  - !ruby/object:Gem::Version
40
- version: 10.1.0
40
+ version: 10.2.1
41
41
  description: Rake tasks for compiling C projects.
42
42
  email:
43
43
  - yasuhito@gmail.com
@@ -46,61 +46,12 @@ extensions: []
46
46
  extra_rdoc_files:
47
47
  - README.md
48
48
  files:
49
- - .gitignore
50
- - .rspec
51
- - .rubocop.yml
52
- - .ruby-version
53
- - .travis.yml
54
49
  - CONTRIBUTING.md
55
- - Gemfile
56
- - Guardfile
57
- - README.md
50
+ - LICENSE
58
51
  - Rakefile
59
- - cucumber.yml
60
- - examples/executable/.gitignore
61
- - examples/executable/Rakefile
62
- - examples/executable/Rakefile.llvm
63
- - examples/executable/hello.c
64
- - examples/executable_subdirs/.gitignore
65
- - examples/executable_subdirs/Rakefile
66
- - examples/executable_subdirs/includes/hello.h
67
- - examples/executable_subdirs/sources/hello.c
68
- - examples/executable_subdirs/sources/main.c
69
- - examples/ruby_extension/.gitignore
70
- - examples/ruby_extension/Rakefile
71
- - examples/ruby_extension/Rakefile.llvm
72
- - examples/ruby_extension/hello.c
73
- - examples/shared_library/.gitignore
74
- - examples/shared_library/Rakefile
75
- - examples/shared_library/Rakefile.llvm
76
- - examples/shared_library/hello.c
77
- - examples/shared_library/hello.h
78
- - examples/shared_library/main.c
79
- - examples/shared_library_subdirs/.gitignore
80
- - examples/shared_library_subdirs/Rakefile
81
- - examples/shared_library_subdirs/includes/hello.h
82
- - examples/shared_library_subdirs/sources/hello.c
83
- - examples/shared_library_subdirs/sources/main.c
84
- - examples/static_library/.gitignore
85
- - examples/static_library/Rakefile
86
- - examples/static_library/Rakefile.llvm
87
- - examples/static_library/hello.c
88
- - examples/static_library/hello.h
89
- - examples/static_library/main.c
90
- - examples/static_library_subdirs/.gitignore
91
- - examples/static_library_subdirs/Rakefile
92
- - examples/static_library_subdirs/includes/hello.h
93
- - examples/static_library_subdirs/sources/hello.c
94
- - examples/static_library_subdirs/sources/main.c
95
- - features/executable_task.feature
96
- - features/ruby_extension_task.feature
97
- - features/shared_library_task.feature
98
- - features/static_library_task.feature
99
- - features/step_definitions/paper_house_steps.rb
100
- - features/support/env.rb
101
- - features/support/hooks.rb
102
- - lib/paper_house.rb
52
+ - paper_house.gemspec
103
53
  - lib/paper_house/auto_depends.rb
54
+ - lib/paper_house/build_failed.rb
104
55
  - lib/paper_house/build_task.rb
105
56
  - lib/paper_house/cc_options.rb
106
57
  - lib/paper_house/dependency.rb
@@ -113,15 +64,21 @@ files:
113
64
  - lib/paper_house/shared_library_task.rb
114
65
  - lib/paper_house/static_library_task.rb
115
66
  - lib/paper_house/version.rb
116
- - paper_house.gemspec
117
- - rake_simplecov_hook.rb
118
- - rubocop-todo.yml
67
+ - lib/paper_house.rb
119
68
  - spec/paper_house/executable_task_spec.rb
120
69
  - spec/paper_house/ruby_extension_task_spec.rb
121
70
  - spec/paper_house/shared_library_task_spec.rb
122
71
  - spec/paper_house/static_library_task_spec.rb
123
72
  - spec/paper_house/version_spec.rb
124
73
  - spec/spec_helper.rb
74
+ - features/executable_task.feature
75
+ - features/ruby_extension_task.feature
76
+ - features/shared_library_task.feature
77
+ - features/static_library_task.feature
78
+ - features/step_definitions/paper_house_steps.rb
79
+ - features/support/env.rb
80
+ - features/support/hooks.rb
81
+ - README.md
125
82
  homepage: http://github.com/trema/paper-house
126
83
  licenses:
127
84
  - GPL3
@@ -134,7 +91,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
134
91
  requirements:
135
92
  - - '>='
136
93
  - !ruby/object:Gem::Version
137
- version: '0'
94
+ version: 1.9.3
138
95
  required_rubygems_version: !ruby/object:Gem::Requirement
139
96
  requirements:
140
97
  - - '>='
@@ -142,11 +99,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
142
99
  version: '0'
143
100
  requirements: []
144
101
  rubyforge_project:
145
- rubygems_version: 2.0.7
102
+ rubygems_version: 2.1.5
146
103
  signing_key:
147
104
  specification_version: 4
148
105
  summary: Rake for C projects.
149
106
  test_files:
107
+ - spec/paper_house/executable_task_spec.rb
108
+ - spec/paper_house/ruby_extension_task_spec.rb
109
+ - spec/paper_house/shared_library_task_spec.rb
110
+ - spec/paper_house/static_library_task_spec.rb
111
+ - spec/paper_house/version_spec.rb
112
+ - spec/spec_helper.rb
150
113
  - features/executable_task.feature
151
114
  - features/ruby_extension_task.feature
152
115
  - features/shared_library_task.feature
@@ -154,10 +117,4 @@ test_files:
154
117
  - features/step_definitions/paper_house_steps.rb
155
118
  - features/support/env.rb
156
119
  - features/support/hooks.rb
157
- - spec/paper_house/executable_task_spec.rb
158
- - spec/paper_house/ruby_extension_task_spec.rb
159
- - spec/paper_house/shared_library_task_spec.rb
160
- - spec/paper_house/static_library_task_spec.rb
161
- - spec/paper_house/version_spec.rb
162
- - spec/spec_helper.rb
163
120
  has_rdoc:
data/.gitignore DELETED
@@ -1,19 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- Gemfile.lock
6
- InstalledFiles
7
- coverage
8
- lib/bundler/man
9
- pkg
10
- rdoc
11
- spec/reports
12
- test/tmp
13
- test/version_tmp
14
- tmp
15
-
16
- # YARD artifacts
17
- .yardoc
18
- _yardoc
19
- doc/
data/.rspec DELETED
@@ -1,3 +0,0 @@
1
- --require spec_helper
2
- --format Fuubar
3
- --color
data/.rubocop.yml DELETED
@@ -1 +0,0 @@
1
- inherit_from: rubocop-todo.yml
data/.ruby-version DELETED
@@ -1 +0,0 @@
1
- 2.0.0
data/.travis.yml DELETED
@@ -1,18 +0,0 @@
1
- language: ruby
2
-
3
- script: "rake travis"
4
-
5
- rvm:
6
- - 1.8.7
7
- - 1.9.3
8
- - 2.0.0
9
-
10
- branches:
11
- only:
12
- - master
13
- - develop
14
-
15
- before_install:
16
- - sudo apt-get update -qq
17
- - sudo apt-get install -qq llvm-gcc-4.6
18
-
data/Gemfile DELETED
@@ -1,35 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gemspec
4
-
5
- group :development do
6
- gem 'aruba', '~> 0.5.3'
7
- gem 'coveralls', '~> 0.7.0', :require => false
8
- gem 'cucumber', '~> 1.3.8'
9
- gem 'flay', '~> 2.4.0'
10
- gem 'flog', '~> 4.1.2'
11
- gem 'fuubar', '~> 1.2.1'
12
- gem 'guard', '~> 1.8.3' if RUBY_VERSION < '1.9.0'
13
- gem 'guard', '~> 2.0.5' if RUBY_VERSION >= '1.9.0'
14
- gem 'guard-cucumber', '~> 1.4.0'
15
- gem 'guard-rspec', '~> 3.1.0' if RUBY_VERSION < '1.9.0'
16
- gem 'guard-rspec', '~> 4.0.1' if RUBY_VERSION >= '1.9.0'
17
- gem 'rb-fchange', '~> 0.0.6', :require => false
18
- gem 'rb-fsevent', '~> 0.9.3', :require => false
19
- gem 'rb-inotify', '~> 0.9.2', :require => false
20
- gem 'redcarpet', '~> 2.3.0' if RUBY_VERSION < '1.9.0'
21
- gem 'redcarpet', '~> 3.0.0' if RUBY_VERSION >= '1.9.0'
22
- gem 'reek', '~> 1.3.3'
23
- gem 'relish', '~> 0.7'
24
- gem 'rspec', '~> 2.14.1'
25
- gem 'rspec-instafail', '~> 0.2.4'
26
- gem 'rubocop', '~> 0.14.1' if RUBY_VERSION >= '1.9.0'
27
- gem 'terminal-notifier-guard', '~> 1.5.3'
28
- gem 'yard', '~> 0.8.7.2'
29
- end
30
-
31
- ### Local variables:
32
- ### mode: Ruby
33
- ### coding: utf-8-unix
34
- ### indent-tabs-mode: nil
35
- ### End:
data/Guardfile DELETED
@@ -1,22 +0,0 @@
1
- # More info at https://github.com/guard/guard#readme
2
-
3
- notification :terminal_notifier
4
- notification :tmux, :display_message => true
5
-
6
-
7
- guard :rspec, :cmd => "rspec --color -r rspec/instafail -f RSpec::Instafail", :all_on_start => false do
8
- watch(%r{^spec/paper_house/.+_spec\.rb$})
9
- watch(%r{^lib/paper_house/(.+)\.rb$}) { |m| "spec/paper_house/#{m[1]}_spec.rb" }
10
- watch('spec/spec_helper.rb') { "spec" }
11
- end
12
-
13
-
14
- require "paper_house/platform"
15
-
16
- cli_opts = %w(--format progress --strict --profile) + [ PaperHouse::Platform::MAC ? "mac" : "linux" ]
17
-
18
- guard :cucumber, :cli => cli_opts.join( " " ), :all_on_start => false do
19
- watch(%r{^features/.+\.feature$})
20
- watch(%r{^features/support/.+$}) { 'features' }
21
- watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'features' }
22
- end
data/cucumber.yml DELETED
@@ -1,3 +0,0 @@
1
- linux: --tags ~@wip --tags ~@mac
2
- mac: --tags ~@wip --tags ~@linux
3
-
@@ -1,4 +0,0 @@
1
- .hello.depends
2
- hello
3
- hello.o
4
-
@@ -1,5 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'paper_house'
4
-
5
- PaperHouse::ExecutableTask.new :hello
@@ -1,5 +0,0 @@
1
- require "paper_house"
2
-
3
- PaperHouse::ExecutableTask.new :hello do | task |
4
- task.cc = "llvm-gcc"
5
- end
@@ -1,7 +0,0 @@
1
- #include <stdio.h>
2
-
3
- int
4
- main() {
5
- printf( "Hello, PaperHouse!\n");
6
- return 0;
7
- }
@@ -1,4 +0,0 @@
1
- .hello.depends
2
- hello
3
- hello.o
4
- main.o
@@ -1,11 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'paper_house'
4
-
5
- PaperHouse::ExecutableTask.new :hello do | task |
6
- task.executable_name = 'hello'
7
- task.target_directory = 'objects'
8
- task.sources = 'sources/*.c'
9
- task.includes = 'includes'
10
- task.cflags = %w(-Wall -Wextra)
11
- end
@@ -1 +0,0 @@
1
- void print_hello();
@@ -1,6 +0,0 @@
1
- #include <stdio.h>
2
-
3
- void
4
- print_hello() {
5
- printf( "Hello, PaperHouse!\n");
6
- }
@@ -1,8 +0,0 @@
1
- #include <stdlib.h>
2
- #include "hello.h"
3
-
4
- int
5
- main() {
6
- print_hello();
7
- return 0;
8
- }
@@ -1,5 +0,0 @@
1
- .hello.depends
2
- hello.bundle
3
- hello.o
4
- hello.so
5
-
@@ -1,5 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'paper_house'
4
-
5
- PaperHouse::RubyExtensionTask.new :hello
@@ -1,5 +0,0 @@
1
- require "paper_house"
2
-
3
- PaperHouse::RubyExtensionTask.new :hello do |task|
4
- task.cc = "llvm-gcc"
5
- end
@@ -1,6 +0,0 @@
1
- #include "ruby.h"
2
-
3
- void
4
- Init_hello() {
5
- VALUE cHelloPaperHouse = rb_define_class( "HelloPaperHouse", rb_cObject );
6
- }
@@ -1,8 +0,0 @@
1
- .hello.depends
2
- .libhello.depends
3
- hello
4
- hello.o
5
- libhello.so
6
- libhello.so.0
7
- libhello.so.0.1.0
8
- main.o
@@ -1,23 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'paper_house'
4
-
5
- libhello = PaperHouse::SharedLibraryTask.new :libhello do |task|
6
- task.version = '0.1.0'
7
- task.sources = 'hello.c'
8
- task.library_dependencies = 'm' # not used.
9
- end
10
-
11
- [libhello.linker_name, libhello.soname].each do |each|
12
- file each do |task|
13
- symlink libhello.target_file_name, task.name
14
- end
15
- CLOBBER.include each if FileTest.exists?(each)
16
- end
17
-
18
- task :hello => [:libhello, libhello.linker_name, libhello.soname]
19
-
20
- PaperHouse::ExecutableTask.new :hello do |task|
21
- task.sources = 'main.c'
22
- task.ldflags = '-L.'
23
- end
@@ -1,25 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require "paper_house"
4
-
5
- libhello = PaperHouse::SharedLibraryTask.new :libhello do |task|
6
- task.version = "0.1.0"
7
- task.sources = "hello.c"
8
- task.cc = "llvm-gcc"
9
- task.library_dependencies = "m" # not used.
10
- end
11
-
12
- [libhello.linker_name, libhello.soname].each do |each|
13
- file each do |task|
14
- symlink libhello.target_file_name, task.name
15
- end
16
- CLOBBER.include each if FileTest.exists?(each)
17
- end
18
-
19
- task :hello => [:libhello, libhello.linker_name, libhello.soname]
20
-
21
- PaperHouse::ExecutableTask.new :hello do |task|
22
- task.sources = "main.c"
23
- task.cc = "llvm-gcc"
24
- task.ldflags = "-L."
25
- end
@@ -1,6 +0,0 @@
1
- #include <stdio.h>
2
-
3
- void
4
- hello() {
5
- printf( "Hello, PaperHouse!\n");
6
- }
@@ -1 +0,0 @@
1
- void hello();
@@ -1,7 +0,0 @@
1
- #include "hello.h"
2
-
3
- int
4
- main() {
5
- hello();
6
- return 0;
7
- }
@@ -1,8 +0,0 @@
1
- .hello.depends
2
- .libhello.depends
3
- hello
4
- hello.o
5
- libhello.so
6
- libhello.so.0
7
- libhello.so.0.1.0
8
- main.o
@@ -1,28 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'paper_house'
4
-
5
- libhello = PaperHouse::SharedLibraryTask.new :libhello do | task |
6
- task.library_name = 'hello'
7
- task.version = '0.1.0'
8
- task.target_directory = 'objects'
9
- task.sources = 'sources/hello.c'
10
- task.includes = 'includes'
11
- task.cflags = %w(-Werror -Wall -Wextra)
12
- end
13
-
14
- task :hello => [:libhello, libhello.linker_name, libhello.soname]
15
-
16
- PaperHouse::ExecutableTask.new :hello do | task |
17
- task.sources = 'sources/main.c'
18
- task.includes = 'includes'
19
- task.ldflags = '-L.'
20
- end
21
-
22
- [libhello.linker_name, libhello.soname].each do | each |
23
- file each do | task |
24
- symlink File.join('objects', libhello.target_file_name), task.name
25
- end
26
-
27
- CLOBBER.include each if FileTest.exists?(each)
28
- end
@@ -1 +0,0 @@
1
- void print_hello();
@@ -1,6 +0,0 @@
1
- #include <stdio.h>
2
-
3
- void
4
- print_hello() {
5
- printf( "Hello, PaperHouse!\n" );
6
- }
@@ -1,8 +0,0 @@
1
- #include <stdlib.h>
2
- #include "hello.h"
3
-
4
- int
5
- main() {
6
- print_hello();
7
- return 0;
8
- }
@@ -1,7 +0,0 @@
1
- .hello.depends
2
- .libhello.depends
3
- hello
4
- hello.o
5
- libhello.a
6
- main.o
7
-
@@ -1,14 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
-
3
- require 'paper_house'
4
-
5
- task :hello => :libhello
6
-
7
- PaperHouse::StaticLibraryTask.new :libhello do | task |
8
- task.sources = 'hello.c'
9
- end
10
-
11
- PaperHouse::ExecutableTask.new :hello do | task |
12
- task.ldflags = '-L.'
13
- task.sources = 'main.c'
14
- end
@@ -1,14 +0,0 @@
1
- require "paper_house"
2
-
3
- task :hello => :libhello
4
-
5
- PaperHouse::StaticLibraryTask.new :libhello do | task |
6
- task.cc = "llvm-gcc"
7
- task.sources = "hello.c"
8
- end
9
-
10
- PaperHouse::ExecutableTask.new :hello do | task |
11
- task.cc = "llvm-gcc"
12
- task.ldflags = "-L."
13
- task.sources = "main.c"
14
- end
@@ -1,6 +0,0 @@
1
- #include <stdio.h>
2
-
3
- void
4
- hello() {
5
- printf( "Hello, PaperHouse!\n");
6
- }
@@ -1 +0,0 @@
1
- void hello();
@@ -1,7 +0,0 @@
1
- #include "hello.h"
2
-
3
- int
4
- main() {
5
- hello();
6
- return 0;
7
- }
@@ -1,7 +0,0 @@
1
- .hello.depends
2
- .libhello.depends
3
- hello
4
- hello.o
5
- libhello.a
6
- main.o
7
-