Adding support for packaging to enable easier publishing via faxien

This commit is contained in:
Dave Smith 2008-12-16 13:16:23 -07:00
parent 036e12fd62
commit f9b3354c50
3 changed files with 34 additions and 1 deletions

View file

@ -37,3 +37,17 @@ task :test do
run_tests "test", "+A10"
end
task :package => [:compile] do
app = File.basename(APP, ".app")
vsn = erl_app_version(app)
target_dir = "#{app}-#{vsn}"
Dir.mkdir target_dir
cp_r 'ebin', target_dir
cp_r 'include', target_dir
cp_r 'src', target_dir
cp_r 'priv', target_dir
Dir.mkdir "#{target_dir}/priv/bin"
cp_r Dir.glob('c_src/system/bin/*'), "#{target_dir}/priv/bin"
puts "Packaged to #{target_dir}"
end

View file

@ -73,6 +73,26 @@ def erl_app_modules(app)
end
end
def erl_app_version(app)
script = <<-ERL
ok = application:load(#{app}),
{ok, Vsn} = application:get_key(#{app}, vsn),
io:format("~s\\n", [Vsn]).
ERL
output = erl_run(script, "-pa ebin")
output.strip()
end
def erl_app_version(app)
script = <<-ERL
ok = application:load(#{app}),
{ok, Vsn} = application:get_key(#{app}, vsn),
io:format("~s\\n", [Vsn]).
ERL
output = erl_run(script, "-pa ebin")
output.strip()
end
def erts_dir()
script = <<-ERL
io:format("~s\n", [lists:concat([code:root_dir(), "/erts-", erlang:system_info(version)])])

View file

@ -22,7 +22,6 @@ tar -xzf db-${DB_VER}.tar.gz && \
(cd db-${DB_VER}/build_unix && \
../dist/configure --prefix=$WORKDIR --disable-shared --with-pic && make && ranlib libdb-*.a && make install) && \
mkdir -p $TARGETDIR/utils && \
cp $WORKDIR/bin/* $TARGETDIR/utils && \
rm -rf db-${DB_VER}