index 43c6e4fd1f41c51a0c9bb92d14f284a250962882..35afae34cd3551571ee7626dd54827f5569b0f4f 100755 (executable)
#!/bin/sh
configfile=gosa-plugin-${1}.spec
+path="rpm_src/gosa-plugins/${1}"
echo "Reading plugin parameters..."
-name=$(awk /name/ $1/plugin.dsc | awk '{ print $3 }')
-description=$(awk /description/ $1/plugin.dsc | awk -F '"' '{ print $2 }')
-version=$(awk /version/ $1/plugin.dsc | awk '{ print $3 }')
-author=$(awk /author/ $1/plugin.dsc | awk -F '"' '{ print $2 }')
-homepage=$(awk /homepage/ $1/plugin.dsc | awk '{ print $3 }')
-depends=$(sed -n 's/^depends\s*=\s*//p' $1/plugin.dsc | sed 's/^/ /;s/,/ /g;s/\s\s*/ /g;s/ / gosa-plugin-/g;s/^ //;s/ /,/')
-conflicts=$(awk /conflicts/ $1/plugin.dsc | awk '{ print $3 }')
-provides=$(awk /provides/ $1/plugin.dsc | awk '{ print $3 }')
+name=$(awk /name/ ${path}/plugin.dsc | awk '{ print $3 }')
+description=$(awk /description/ ${path}/plugin.dsc | awk -F '"' '{ print $2 }')
+version=$(awk /version/ ${path}/plugin.dsc | awk '{ print $3 }')
+author=$(awk /author/ ${path}/plugin.dsc | awk -F '"' '{ print $2 }')
+homepage=$(awk /homepage/ ${path}/plugin.dsc | awk '{ print $3 }')
+depends=$(sed -n 's/^depends\s*=\s*//p' ${path}/plugin.dsc | sed 's/^/ /;s/,/ /g;s/\s\s*/ /g;s/ / gosa-plugin-/g;s/^ //;s/ /,/')
+conflicts=$(awk /conflicts/ ${path}/plugin.dsc | awk '{ print $3 }')
+provides=$(awk /provides/ ${path}/plugin.dsc | awk '{ print $3 }')
release=0
-echo "Creating Spec file..."
-cat << EOF | sed -e "s/@@NAME@@/$name/g" -e "s/@@DESCRIPTION@@/$description/g" -e "s/@@VERSION@@/$version/g" -e "s/@@AUTHOR@@/$author/g" -e "s#@@HOMEPAGE@@#$homepage#g" -e "s/@@DEPENDS@@/$depends/g" -e "s/@@CONFLICTS@@/$conflicts/g" -e "s/@@PROVIDES@@/$provides/g" -e "s/@@RELEASE@@/$release/g" -e "s/@@.*@@/not_defined/g" > $configfile
+
+cat << EOF | sed -e "s%@@NAME@@%$name%g" \
+ -e "s%@@DESCRIPTION@@%$description%g" \
+ -e "s%@@VERSION@@%$version%g" \
+ -e "s%@@AUTHOR@@%$author%g" \
+ -e "s%@@HOMEPAGE@@%$homepage%g" \
+ -e "s%@@DEPENDS@@%$depends%g" \
+ -e "s%@@CONFLICTS@@%$conflicts%g" \
+ -e "s%@@PROVIDES@@%$provides%g" \
+ -e "s%@@RELEASE@@%$release%g" \
+ -e "s%@@.*@@%not_defined%g" > $configfile
+
# Some sort of "detection" of suse
%{?suse_version:%define suse 1}
%{!?suse_version:%define suse 0}
BuildRoot: %{_tmppath}/%{name}-%{version}-root
BuildArch: noarch
-%define confdir /etc/%{name}
-
%if %{suse}
%{echo:Building SuSE rpm}
%define docdir /usr/share/doc/packages/gosa
%build
%install
-# Create buildroot
-mkdir -p %{buildroot}/usr/share/gosa/plugins/%{name}
-mv ./* %{buildroot}/usr/share/gosa/plugins/%{name}
-#cp -ua ./@@NAME@@* %{buildroot}/usr/share/gosa/plugins/@@NAME@@
+
+# Move extra HTML and images
+mkdir -p %{buildroot}/usr/share/gosa/html/plugins/@@NAME@@
+
+echo "%{buildroot} <<---------"
+
+if [ -e ./html/* ]; then
+ mv ./html/* %{buildroot}/usr/share/gosa/html/plugins/@@NAME@@
+fi
+
+# Move contrib if available
+mkdir -p %{buildroot}/usr/share/doc/%{name}
+if [ -e ./contrib/* ]; then
+ mv ./contrib %{buildroot}/usr/share/doc/%{name}
+fi
+
+# Move help
+mkdir -p %{buildroot}/usr/share/gosa/doc/plugins/@@NAME@@
+if [ -e ./help/* ]; then
+ mv ./help/* %{buildroot}/usr/share/gosa/doc/plugins/@@NAME@@
+fi
+
+# Copy etc
+mkdir -p %{buildroot}/etc/gosa
+if [ -e ./etc/* ]; then
+ mv ./etc/* %{buildroot}/etc/gosa
+fi
+
+# Move localization
+mkdir -p %{buildroot}/usr/share/gosa/locale/plugins/@@NAME@@
+if [ -e ./locale/* ]; then
+ mv ./locale/* %{buildroot}/usr/share/gosa/locale/plugins/@@NAME@@
+fi
+
+# Move plugin itself
+mkdir -p %{buildroot}/usr/share/gosa/plugins/@@NAME@@
+mv ./* %{buildroot}/usr/share/gosa/plugins/@@NAME@@
%post
/usr/sbin/update-gosa
+%postun
+/usr/sbin/update-gosa
+
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root)
-%attr (-,root,root) /usr/share/gosa/plugins/%{name}
+%attr (-,root,root) /usr/share/gosa/plugins/@@NAME@@
+%attr (-,root,root) /usr/share/gosa/doc/plugins/@@NAME@@
+%attr (-,root,root) /usr/share/gosa/locale/plugins/@@NAME@@
+%attr (-,root,root) /usr/share/gosa/html/plugins/@@NAME@@
+%attr (-,root,root) /usr/share/doc/%{name}
+%attr (-,root,root) /etc/gosa/
EOF
# Create eventually missing directories
-[ ! -d /usr/src/redhat/SOURCES ] && mkdir -p /usr/src/redhat/SOURCES
-[ ! -d /usr/src/redhat/SPECS ] && mkdir -p /usr/src/redhat/SPECS
+[ ! -d ${2}/SOURCES ] && mkdir -p ${2}/SOURCES
+[ ! -d ${2}/SPECS ] && mkdir -p ${2}/SPECS
-mv $configfile /usr/src/redhat/SPECS
-cp -r ./$1 /tmp/$1-${version}
+mv $configfile ${2}/SPECS
+cp -r ./rpm_src/gosa-plugins/${1} /tmp/gosa-plugin-${1}-${version}
cd /tmp/
-mv $1-${version} gosa-plugin-${1}-${version}
-tar cjf gosa-plugin-${1}-${version}.tar.bz2 ./gosa-plugin-${1}-${version}
-rm -rf $1-${version} gosa-plugin-${1}-${version}
-mv -f gosa-plugin-${1}-${version}.tar.bz2 /usr/src/redhat/SOURCES
-
+tar cjf ${2}/SOURCES/gosa-plugin-${1}-${version}.tar.bz2 ./gosa-plugin-${1}-${version}
+rm -rf gosa-plugin-${1}-${version}
echo "Done."
+exit 0