1 #!/bin/sh
3 configfile=gosa-plugin-${1}.spec
4 path="rpm_src/gosa-plugins/${1}"
6 echo "Reading plugin parameters..."
8 name=$(awk /name/ ${path}/plugin.dsc | awk '{ print $3 }')
9 description=$(awk /description/ ${path}/plugin.dsc | awk -F '"' '{ print $2 }')
10 version=$(awk /version/ ${path}/plugin.dsc | awk '{ print $3 }')
11 author=$(awk /author/ ${path}/plugin.dsc | awk -F '"' '{ print $2 }')
12 homepage=$(awk /homepage/ ${path}/plugin.dsc | awk '{ print $3 }')
13 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/ /,/')
14 conflicts=$(awk /conflicts/ ${path}/plugin.dsc | awk '{ print $3 }')
15 provides=$(awk /provides/ ${path}/plugin.dsc | awk '{ print $3 }')
16 release=0
19 cat << EOF | sed -e "s%@@NAME@@%$name%g" \
20 -e "s%@@DESCRIPTION@@%$description%g" \
21 -e "s%@@VERSION@@%$version%g" \
22 -e "s%@@AUTHOR@@%$author%g" \
23 -e "s%@@HOMEPAGE@@%$homepage%g" \
24 -e "s%@@DEPENDS@@%$depends%g" \
25 -e "s%@@CONFLICTS@@%$conflicts%g" \
26 -e "s%@@PROVIDES@@%$provides%g" \
27 -e "s%@@RELEASE@@%$release%g" \
28 -e "s%@@.*@@%not_defined%g" > $configfile
30 # Some sort of "detection" of suse
31 %{?suse_version:%define suse 1}
32 %{!?suse_version:%define suse 0}
34 # Define Packagename, e.g.:
35 # rpmbuild --rebuild --define 'sourcename gosa' gosa.srpm
36 %{!?sourcename:%define sourcename %{name}-%{version}}
38 #
39 # Distribution
40 #
41 Summary: @@DESCRIPTION@@
42 Name: gosa-plugin-@@NAME@@
43 Version: @@VERSION@@
44 Release: @@RELEASE@@
45 License: GPL
46 Source: ftp://oss.GONICUS.de/pub/gosa/%{sourcename}.tar.bz2
47 URL: @@HOMEPAGE@@
48 Group: System/Administration
49 Vendor: GONICUS GmbH
50 Packager: @@AUTHOR@@
51 Buildarch: noarch
52 %if %{suse}
53 Requires: gosa >= 2.6.0, @@DEPENDS@@
54 %else
55 Requires: gosa >= 2.6.0, @@DEPENDS@@
56 %endif
57 BuildRoot: %{_tmppath}/%{name}-%{version}-root
58 BuildArch: noarch
60 %if %{suse}
61 %{echo:Building SuSE rpm}
62 %define docdir /usr/share/doc/packages/gosa
63 %else
64 %{echo:Building other rpm}
65 %define webconf /etc/httpd/conf.d/
66 %define docdir /usr/share/doc/gosa-%{version}
67 %endif
69 %description
70 @@DESCRIPTION@@
72 %prep
73 %setup -q -n %{sourcename}
75 %build
77 %install
79 # Move extra HTML and images
80 mkdir -p %{buildroot}/usr/share/gosa/html/plugins/@@NAME@@
82 echo "%{buildroot} <<---------"
84 if [ -e ./html/* ]; then
85 mv ./html/* %{buildroot}/usr/share/gosa/html/plugins/@@NAME@@
86 fi
88 # Move contrib if available
89 mkdir -p %{buildroot}/usr/share/doc/%{name}
90 if [ -e ./contrib/* ]; then
91 mv ./contrib %{buildroot}/usr/share/doc/%{name}
92 fi
94 # Move help
95 mkdir -p %{buildroot}/usr/share/gosa/doc/plugins/@@NAME@@
96 if [ -e ./help/* ]; then
97 mv ./help/* %{buildroot}/usr/share/gosa/doc/plugins/@@NAME@@
98 fi
100 # Copy etc
101 mkdir -p %{buildroot}/etc/gosa
102 if [ -e ./etc/* ]; then
103 mv ./etc/* %{buildroot}/etc/gosa
104 fi
106 # Move localization
107 mkdir -p %{buildroot}/usr/share/gosa/locale/plugins/@@NAME@@
108 if [ -e ./locale/* ]; then
109 mv ./locale/* %{buildroot}/usr/share/gosa/locale/plugins/@@NAME@@
110 fi
112 # Move plugin itself
113 mkdir -p %{buildroot}/usr/share/gosa/plugins/@@NAME@@
114 mv ./* %{buildroot}/usr/share/gosa/plugins/@@NAME@@
116 %post
117 /usr/sbin/update-gosa
119 %postun
120 /usr/sbin/update-gosa
122 %clean
123 rm -rf %{buildroot}
125 %files
126 %defattr(-,root,root)
127 %attr (-,root,root) /usr/share/gosa/plugins/@@NAME@@
128 %attr (-,root,root) /usr/share/gosa/doc/plugins/@@NAME@@
129 %attr (-,root,root) /usr/share/gosa/locale/plugins/@@NAME@@
130 %attr (-,root,root) /usr/share/gosa/html/plugins/@@NAME@@
131 %attr (-,root,root) /usr/share/doc/%{name}
132 %attr (-,root,root) /etc/gosa/
133 EOF
135 # Create eventually missing directories
136 [ ! -d ${2}/SOURCES ] && mkdir -p ${2}/SOURCES
137 [ ! -d ${2}/SPECS ] && mkdir -p ${2}/SPECS
139 mv $configfile ${2}/SPECS
140 cp -r ./rpm_src/gosa-plugins/${1} /tmp/gosa-plugin-${1}-${version}
141 cd /tmp/
142 tar cjf ${2}/SOURCES/gosa-plugin-${1}-${version}.tar.bz2 ./gosa-plugin-${1}-${version}
143 rm -rf gosa-plugin-${1}-${version}
144 echo "Done."
145 exit 0