Skip to content
Snippets Groups Projects
Commit 830277c6 authored by Alec Leamas's avatar Alec Leamas
Browse files

Merge branch 'v2'

Conflicts:
	pkg/fedora/diaspora-bundle.spec
parents 56eeae46 d5e8e516
No related branches found
No related tags found
No related merge requests found
%define git_release HEAD
# Turn off java repack, this is in in /usr/lib[64] anyway
# Turn off java repack, this is in /usr/lib[64] anyway
%define __jar_repack %{nil}
# Turn off the brp-python-bytecompile script, *pyc/pyo causes problems
......@@ -11,20 +11,20 @@ Summary: Rubygem bundle for diaspora
Name: diaspora-bundle
Version: 0.0
Release: 1.%{git_release}%{?dist}
License: AGPLv3
License: Ruby
Group: Applications/Communications
URL: http://www.joindiaspora.com/
Vendor: joindiaspora.com
Source: %{name}-%{version}-%{git_release}.tar.gz
Prefix: %{_prefix}
BuildRoot: %{_rmpdir}/not-used-in-fedora/
BuildRoot: %{_tmpdir}/not-used-since-F13/
Requires(pre): shadow-utils
Requires: ruby(abi) = 1.8
%description
The ruby apps bundled with diaspora, as provided by
bundle install --deployment and patched for Fedora use.
bundle install --package and patched for Fedora use.
%package devel
Summary: Development files (i. e., sources) for diaspora-bundle
......@@ -37,53 +37,15 @@ Source file usede to compile native libraries in diaspora-bundle.
%prep
%setup -q -n %{name}-%{version}-%{git_release}
find . -name .git* -print | xargs rm -rf
pushd bundle/ruby/1.8/
find . -name \*.css -exec chmod 644 {} \;
find . -name \*.js -exec chmod 644 {} \;
find . -name \*.treetop -exec chmod 644 {} \;
find . -name \*.rdoc -exec chmod 644 {} \;
chmod 644 gems/term-ansicolor-1.0.5/CHANGES || :
chmod 755 gems/cucumber-rails-0.3.2/templates/install/script/cucumber || :
chmod 755 gems/ruby-debug-base-0.10.3/Rakefile || :
chmod 644 gems/cucumber-rails-0.3.2/History.txt || :
chmod 644 gems/cucumber-rails-0.3.2/templates/install/step_definitions/capybara_steps.rb.erb || :
chmod 644 gems/rack-1.2.1/test/cgi/lighttpd.conf || :
chmod 644 gems/term-ansicolor-1.0.5/VERSION || :
chmod 644 gems/mini_magick-2.1/Rakefile || :
chmod 755 gems/linecache-0.43/Rakefile || :
chmod 644 gems/ffi-0.6.3/ext/ffi_c/libffi/ltmain.sh || :
chmod 644 gems/term-ansicolor-1.0.5/README || :
chmod 755 gems/mini_magick-2.1/test/not_an_image.php || :
chmod 755 gems/rake-0.8.7/test/data/statusreturn/Rakefile || :
chmod 755 gems/ruby-debug-0.10.3/Rakefile || :
chmod 644 gems/gherkin-2.2.4/tasks/compile.rake || :
chmod 755 gems/rake-0.8.7/test/data/file_creation_task/Rakefile || :
chmod 644 gems/term-ansicolor-1.0.5/Rakefile || :
chmod 755 gems/mime-types-1.16/Rakefile || :
for f in $(find . -name \*.rb); do
sed -i -e '/^#!/d' $f
chmod 0644 $f
done > /dev/null 2>&1
find . -perm /u+x -type f -print0 |
xargs --null sed -i 's|^#!/usr/local/bin/ruby|#!/usr/bin/ruby|'
chmod 755 gems/thin-1.2.7/example/async_chat.ru || :
chmod 755 gems/thin-1.2.7/example/async_tailer.ru || :
chmod 644 gems/i18n-0.4.1/MIT-LICENSE || :
chmod 755 gems/abstract-1.0.0/abstract.gemspec || :
chmod 644 gems/mini_magick-2.1/MIT-LICENSE || :
chmod 755 gems/thin-1.2.7/lib/thin/controllers/service.sh.erb || :
chmod 644 gems/treetop-1.4.8/spec/compiler/test_grammar.tt || :
popd
%build
mkdir -p vendor/cache
mv *.gem vendor/cache
bundle install --local --deployment --without ri rdoc
pushd bundle/ruby/1.8/
pushd vendor/bundle/ruby/1.8/gems
# In repo (2.2.4)
test -d gems/gherkin-*/ext && {
pushd gems/gherkin-*/ext
test -d gherkin-*/ext && {
pushd gherkin-*/ext
# Recompile all shared libraries using -O2 flag
for lexer_dir in */ ; do
pushd $lexer_dir
......@@ -102,32 +64,32 @@ pushd bundle/ruby/1.8/
popd
}
test -d gems/ffi-0.6.3/lib && {
pushd gems/ffi-0.6.3/lib
test -d ffi-0.6.3/lib && {
pushd ffi-0.6.3/lib
rm ffi_c.so
ln -s ../ext/ffi_c/ffi_c.so .
popd
}
# In repo as 1.2.5, rawhide 1.2.7
pushd gems/thin-1.2.7/lib
pushd thin-1.2.7/lib
rm thin_parser.so
ln -s ../ext/thin_parser/thin_parser.so .
popd
pushd gems/bson_ext-1.1/ext/bson_ext
pushd bson_ext-1.1/ext/bson_ext
rm cbson.so
ln -s ../cbson/cbson.so .
popd
# In repo (0.10.4)
pushd gems/ruby-debug-base-0.10.3/lib
pushd ruby-debug-base-0.10.3/lib
rm ruby_debug.so
ln -s ../ext/ruby_debug.so .
popd
#in repo
pushd gems/eventmachine-0.12.10/lib
pushd eventmachine-0.12.10/lib
rm rubyeventmachine.so
rm fastfilereaderext.so
ln -s ../ext/rubyeventmachine.so .
......@@ -135,19 +97,19 @@ pushd bundle/ruby/1.8/
popd
# In repo
pushd gems/bcrypt-ruby-2.1.2/lib
pushd bcrypt-ruby-2.1.2/lib
rm bcrypt_ext.so
ln -s ../ext/mri/bcrypt_ext.so .
popd
# in repo
pushd gems/nokogiri-1.4.3.1/lib/nokogiri
pushd nokogiri-1.4.3.1/lib/nokogiri
rm nokogiri.so
ln -sf ../../ext/nokogiri/nokogiri.so .
popd
# in repo (rawhide)
pushd gems/json-1.4.6/ext/json/ext/json/ext
pushd json-1.4.6/ext/json/ext/json/ext
rm generator.so
ln -s ../../generator/generator.so
rm parser.so
......@@ -155,19 +117,55 @@ pushd bundle/ruby/1.8/
popd
#in repo
pushd gems/linecache-0.43/lib/
pushd linecache-0.43/lib/
rm trace_nums.so
ln -s ../ext/trace_nums.so .
popd
pushd bundler/gems/em-http-request-*/lib
pushd ../bundler/gems/em-http-request*/lib
rm em_buffer.so
ln -s ../ext/buffer/em_buffer.so .
rm http11_client.so
ln -s ../ext/http11_client/http11_client.so .
popd
popd
find . -name \*.css -print | xargs chmod 644
find . -name \*.js -print | xargs chmod 644
find . -name \*.treetop -print | xargs chmod 644
find . -name \*.rdoc -print | xargs chmod 644
for f in $(find . -name \*.rb); do
sed -i -e '/^#!/d' $f
chmod 0644 $f
done &> /dev/null
find . -perm /u+x -type f -print0 |
xargs --null sed -i 's|^#!/usr/local/bin/ruby|#!/usr/bin/ruby|'
chmod 755 abstract-1.0.0/abstract.gemspec || :
chmod 755 cucumber-rails-0.3.2/templates/install/script/cucumber || :
chmod 644 cucumber-rails-0.3.2/History.txt || :
chmod 644 cucumber-rails-0.3.2/templates/install/step_definitions/capybara_steps.rb.erb || :
chmod 644 ffi-0.6.3/ext/ffi_c/libffi/ltmain.sh || :
chmod 644 gherkin-2.2.4/tasks/compile.rake || :
chmod 644 i18n-0.4.1/MIT-LICENSE
chmod 755 linecache-0.43/Rakefile || :
chmod 755 mime-types-1.16/Rakefile || :
chmod 755 mini_magick-2.1/test/not_an_image.php || :
chmod 644 mini_magick-2.1/Rakefile || :
chmod 644 mini_magick-2.1/MIT-LICENSE || :
chmod 644 rack-1.2.1/test/cgi/lighttpd.conf || :
chmod 755 rake-0.8.7/test/data/file_creation_task/Rakefile || :
chmod 755 rake-0.8.7/test/data/statusreturn/Rakefile || :
chmod 755 ruby-debug-0.10.3/Rakefile || :
chmod 755 ruby-debug-base-0.10.3/Rakefile || :
for file in CHANGES VERSION README Rakefile; do
chmod 644 term-ansicolor-1.0.5/$file || :
done
chmod 755 thin-1.2.7/lib/thin/controllers/service.sh.erb
chmod 755 thin-1.2.7/example/async_chat.ru || :
chmod 755 thin-1.2.7/example/async_tailer.ru || :
chmod 644 treetop-1.4.8/spec/compiler/test_grammar.tt || :
popd
%pre
......@@ -186,8 +184,8 @@ find . -name .git | xargs rm -rf
find . -name .gitignore -delete
find . -name \*.o -delete || :
test -d bundle/ruby/1.8/gems/selenium-webdriver-0.0.28 && {
pushd bundle/ruby/1.8/gems/selenium-webdriver-0.0.28/lib/selenium/webdriver/
test -d vendor/bundle/ruby/1.8//gems/selenium-webdriver-0.0.* && {
pushd vendor/bundle//ruby/1.8/gems/selenium-webdriver-0.0.*/lib/selenium/webdriver/
%ifarch %ix86 x86_64
%ifarch %ix86
rm -rf firefox/native/linux/amd64
......@@ -201,8 +199,8 @@ pushd bundle/ruby/1.8/gems/selenium-webdriver-0.0.28/lib/selenium/webdriver/
popd
}
mkdir -p $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle/
cp -ar bundle $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle/
mkdir -p $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle
cp -ar vendor/bundle $RPM_BUILD_ROOT/%{_libdir}/diaspora-bundle
find %{buildroot}/%{_libdir}/diaspora-bundle \
-type d -fprintf dirs '%%%dir "%%p"\n'
......
......@@ -175,6 +175,42 @@ function make_src
echo "Required bundle: $(git_id dist/diaspora/Gemfile)"
}
function get_git_repos()
{
grep -A 2 GIT $1 |
awk ' /remote:/ { repo = $2 }
/revision:/ { printf "%s=%s\n",repo, $2}'
}
function package_git_gems()
{
gemfile="$1"
dest="$2"
rm -rf git-tmp
mkdir git-tmp
cd git-tmp
for repo in $( get_git_repos $1); do
url=${repo%%=*}
rev=${repo##*=}
name=${url##*/}
name="${name%.git}"
rm -rf "$name"
git clone "$url" "$name"
cd ${name%.git}
git reset --hard $rev
sed -i '/s.date/s/Date.today/"2010-09-25"/' *.gemspec
gem build *.gemspec
cp *.gem $dest
echo "Built GIT gem $name"
cd ..
done
cd ..
}
function make_bundle()
# Create the bundle tarball
......@@ -188,22 +224,23 @@ function make_bundle()
echo "Creating bundle $bundle_name"
cd dist
rm -rf $bundle_name
mkdir -p $bundle_name/bundle
pushd diaspora > /dev/null
cd diaspora
rm -rf vendor/*
if [ "$BUNDLE_FIX" = 'yes' ]; then
rm -f Gemfile.lock
rm -rf .bundle
bundle update
fi
bundle install --deployment \
--path="../$bundle_name/bundle" \
--without=test rdoc
bundle package
package_git_gems "$PWD/Gemfile.lock" "$PWD/vendor/cache/"
cp -ar AUTHORS Gemfile Gemfile.lock GNU-AGPL-3.0 COPYRIGHT \
"../$bundle_name"
popd > /dev/null
tar czf $bundle_name.tar.gz $bundle_name
rm -rf $bundle_name
vendor/cache
cd vendor
mv cache $bundle_name
tar czf ../../$bundle_name.tar.gz $bundle_name
mv $bundle_name vendor
cd ..
cd ..
cd ..
}
echo
......
......@@ -23,4 +23,8 @@ mv $(basename $1 .tar.gz) diaspora-bundle
mkdir -p /usr/share/doc/diaspora-bundle || :
cd /usr/lib/diaspora-bundle
cp AUTHORS GNU-AGPL-3.0 COPYRIGHT /usr/share/doc/diaspora-bundle
cp AUTHORS GNU-AGPL-3.0 COPYRIGHT Gemfile Gemfile.lock \
/usr/share/doc/diaspora-bundle
bundle install --local --deployment --without ri rdoc
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment