2012-05-16 01:27:14 +01:00
|
|
|
DEBUG = true
|
|
|
|
|
2012-05-19 12:48:03 +01:00
|
|
|
SOURCES = %w( flexnbd ioutil readwrite serve util parse )
|
2012-05-17 20:14:22 +01:00
|
|
|
OBJECTS = SOURCES.map { |s| "#{s}.o" }
|
2012-05-16 01:27:14 +01:00
|
|
|
LIBS = %w( pthread )
|
|
|
|
CCFLAGS = %w( -Wall )
|
|
|
|
LDFLAGS = []
|
|
|
|
|
|
|
|
if DEBUG
|
|
|
|
LDFLAGS << ["-g"]
|
|
|
|
CCFLAGS << ["-g -DDEBUG"]
|
|
|
|
LIBS << ["efence"]
|
|
|
|
end
|
|
|
|
|
|
|
|
rule 'default' => 'flexnbd'
|
|
|
|
|
2012-05-17 20:14:22 +01:00
|
|
|
rule 'flexnbd' => OBJECTS do |t|
|
2012-05-16 01:27:14 +01:00
|
|
|
sh "gcc #{LDFLAGS.join(' ')} "+
|
|
|
|
LIBS.map { |l| "-l#{l}" }.join(" ")+
|
2012-05-17 20:14:22 +01:00
|
|
|
" -o #{t.name} "+
|
|
|
|
t.sources.join(" ")
|
2012-05-16 01:27:14 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
rule '.o' => '.c' do |t|
|
|
|
|
sh "gcc -c #{CCFLAGS.join(' ')} -o #{t.name} #{t.source} "
|
|
|
|
end
|
|
|
|
|
|
|
|
rule 'clean' do
|
2012-05-17 20:14:22 +01:00
|
|
|
sh "rm -f flexnbd "+OBJECTS.join(" ")
|
2012-05-16 01:27:14 +01:00
|
|
|
end
|