diff --git a/installer/rpm/dub.spec b/installer/rpm/dub.spec new file mode 100644 index 0000000..65f1289 --- /dev/null +++ b/installer/rpm/dub.spec @@ -0,0 +1,47 @@ +## command is: +# rpmbuild -ba dub.spec --define 'ver 0.9.21' --define 'rel 0.rc.3' +# rpm file will be in ./dub*.rpm +# if built on a i386 platform, rpm file will be in ~/rpmbuild/RPMS/i386/dub*.rpm + +Name: dub +Summary: Package manager and meta build tool for the D programming language +Vendor: rejectedsoftware e.K. +Version: %{ver} +Release: %{rel} +License: MIT +Group: Applications/Programming + +#Source: dub.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id} -u -n) +URL: http://code.dlang.org + +BuildRequires: tar + +%description +Package Manager for the D Programming language + +%prep +#echo prep +#tar -xf %{_sourcedir}/dub.tar.gz + +%build +echo build +cd %{srcpath} && ./build.sh + +%install +echo install +rm -rf $RPM_BUILD_ROOT +mkdir -p $RPM_BUILD_ROOT%{_bindir}/ +cp %{srcpath}/bin/dub $RPM_BUILD_ROOT%{_bindir}/ + +%files +# +# list all files that need to be copied here +# + +%defattr(755,root,root,-) +/usr/bin/dub + +%clean +cp $RPM_BUILD_ROOT/../../RPMS/*/dub*.rpm . +rm -rf $RPM_BUILD_ROOT/../../RPMS/* diff --git a/installer/rpm/make_installer.sh b/installer/rpm/make_installer.sh new file mode 100755 index 0000000..bbee2b1 --- /dev/null +++ b/installer/rpm/make_installer.sh @@ -0,0 +1,20 @@ +#!/bin/sh +set -e +cd ../../ +DUB_PATH=`pwd` +#rm -f ~/rpmbuild/SOURCES/dub.tar.gz +#tar -pczf ~/rpmbuild/SOURCES/dub.tar.gz source build-files.txt build.sh LICENSE* +cd installer/rpm/ +for i in $(git describe | tr "-" "\n"); do + if [ "$VER" == "" ]; then + VER=$i + elif [ "$REL" == "" ]; then + REL=0.$i + else + REL=$REL.$i + fi +done +ARCH=$(uname -i) +echo Building RPM FOR $VER-$REL-$ARCH +rpmbuild -ba dub.spec --define "ver $VER" --define "rel $REL" --define="srcpath $DUB_PATH" +cp ~/rpmbuild/BUILD/dub-$VER-$REL.$ARCH.rpm .