paper_house 0.5.0 → 0.6.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.
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
-