From c8804c0a38459acca6c7e9eff91db68fd7fb0f75 Mon Sep 17 00:00:00 2001 From: Mark Huang Date: Sat, 20 Jan 2007 04:08:47 +0000 Subject: [PATCH] - Split off myplc-devel into separate spec file, so that it can be built standalone. --- myplc-devel.spec | 100 +++++++++++++++++++++++++++++++++++++++++++++ myplc.spec | 104 +++-------------------------------------------- 2 files changed, 105 insertions(+), 99 deletions(-) create mode 100644 myplc-devel.spec diff --git a/myplc-devel.spec b/myplc-devel.spec new file mode 100644 index 0000000..4132490 --- /dev/null +++ b/myplc-devel.spec @@ -0,0 +1,100 @@ +Vendor: PlanetLab +Packager: PlanetLab Central +Distribution: PlanetLab 4.0 +URL: http://cvs.planet-lab.org/cvs/myplc + +Summary: PlanetLab Central (PLC) Development Environment +Name: myplc-devel +Version: 0.5 +Release: 3%{?pldistro:.%{pldistro}}%{?date:.%{date}} +License: PlanetLab +Group: Development/Tools +Source0: %{name}-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +AutoReqProv: no + +%define debug_package %{nil} + +%description +This package install a complete PlanetLab development environment +contained within a chroot jail. The default installation consists of +all the tools necessary to compile MyPLC. + +%prep +%setup -q + +%build +pushd myplc +./build_devel.sh +popd + +%install +rm -rf $RPM_BUILD_ROOT + +pushd myplc + +# Install host startup script and configuration file +install -D -m 755 host.init $RPM_BUILD_ROOT/%{_sysconfdir}/init.d/plc-devel +install -D -m 644 plc-devel.sysconfig $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/plc-devel + +# Install root filesystem +install -d -m 755 $RPM_BUILD_ROOT/plc/devel/root +install -D -m 644 devel/root.img $RPM_BUILD_ROOT/plc/devel/root.img + +# Install data directory +find devel/data | cpio -p -d -u $RPM_BUILD_ROOT/plc/ + +popd + +%clean +rm -rf $RPM_BUILD_ROOT + +# If run under sudo +if [ -n "$SUDO_USER" ] ; then + # Allow user to delete the build directory + chown -h -R $SUDO_USER . + # Some temporary cdroot files like /var/empty/sshd and + # /usr/bin/sudo get created with non-readable permissions. + find . -not -perm +0600 -exec chmod u+rw {} \; + # Allow user to delete the built RPM(s) + chown -h -R $SUDO_USER %{_rpmdir}/%{_arch} +fi + +%pre +if [ -x %{_sysconfdir}/init.d/plc-devel ] ; then + %{_sysconfdir}/init.d/plc-devel stop +fi + +%post +if [ -x /sbin/chkconfig ] ; then + /sbin/chkconfig --add plc-devel + /sbin/chkconfig plc-devel on +fi + +%preun +# 0 = erase, 1 = upgrade +if [ $1 -eq 0 ] ; then + %{_sysconfdir}/init.d/plc-devel stop + if [ -x /sbin/chkconfig ] ; then + /sbin/chkconfig plc-devel off + /sbin/chkconfig --del plc-devel + fi +fi + +%files +%defattr(-,root,root,-) +# Host startup script and configuration file +%{_sysconfdir}/init.d/plc-devel +%{_sysconfdir}/sysconfig/plc-devel + +# Root filesystem +/plc/devel/root.img +/plc/devel/root + +# Data directory +%dir /plc/devel/data +%config(noreplace) /plc/devel/data/* + +%changelog +* Fri Jan 19 2007 Mark Huang - 0.5-3 +- Initial build. diff --git a/myplc.spec b/myplc.spec index 6da4ed3..f870235 100644 --- a/myplc.spec +++ b/myplc.spec @@ -12,11 +12,6 @@ Group: Applications/Systems Source0: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root -# for preventing myplc-devel from being built -# *should* support invokation like rpmbuild --define "build_level 0" -# *but* this does not seem to work : so just set to 0 here -%{!?build_level: %define build_devel 1} - %define debug_package %{nil} %description @@ -28,33 +23,12 @@ through a graphical interface. All PLC services are started up and shut down through a single System V init script installed in the host system. -%if %{build_devel} -%package devel -Summary: PlanetLab Central (PLC) Development Environment -Group: Development/Tools -AutoReqProv: no -%endif - -%if %{build_devel} -%description devel -This package install a complete PlanetLab development environment -contained within a chroot jail. The default installation consists of a -local CVS repository bootstrapped with a snapshot of all PlanetLab -source code, and all the tools necessary to compile it. -%endif - %prep %setup -q %build pushd myplc -%if %{build_devel} -echo -n "XXXXXXXXXXXXXXX myplc::build_devel " ; date -./build_devel.sh %{?cvstag:-t %{cvstag}} -%endif -echo -n "XXXXXXXXXXXXXXX myplc::build " ; date -./build.sh %{?cvstag:-t %{cvstag}} -echo -n "XXXXXXXXXXXXXXX myplc::endbuild " ; date +./build.sh popd %install @@ -81,29 +55,6 @@ install -D -m 644 root.img $RPM_BUILD_ROOT/plc/root.img # Install data directory find data | cpio -p -d -u $RPM_BUILD_ROOT/plc/ -# -# myplc-devel -# - -%if %{build_devel} - -# Install host startup script and configuration file -install -D -m 755 host.init $RPM_BUILD_ROOT/%{_sysconfdir}/init.d/plc-devel -install -D -m 644 plc-devel.sysconfig $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/plc-devel - -# Install root filesystem -install -d -m 755 $RPM_BUILD_ROOT/plc/devel/root -install -D -m 644 devel/root.img $RPM_BUILD_ROOT/plc/devel/root.img - -# Install data directory -find devel/data | cpio -p -d -u $RPM_BUILD_ROOT/plc/ - -# Make sure /cvs is never upgraded once installed by giving it a -# unique name. A hard-linked copy is made in %post. -mv $RPM_BUILD_ROOT/plc/devel/data/{cvs,cvs-%{version}-%{release}} - -%endif - popd %clean @@ -185,39 +136,6 @@ if [ $1 -eq 0 ] ; then fi fi -%if %{build_devel} -%pre devel -if [ -x %{_sysconfdir}/init.d/plc-devel ] ; then - %{_sysconfdir}/init.d/plc-devel stop -fi -%endif - -%if %{build_devel} -%post devel -if [ -x /sbin/chkconfig ] ; then - /sbin/chkconfig --add plc-devel - /sbin/chkconfig plc-devel on -fi - -# If /cvs does not already exist, make a hard-linked copy of this -# version's /cvs repository. -if [ ! -d /plc/devel/data/cvs ] ; then - cp -rl /plc/devel/data/{cvs-%{version}-%{release},cvs} -fi -%endif - -%if %{build_devel} -%preun devel -# 0 = erase, 1 = upgrade -if [ $1 -eq 0 ] ; then - %{_sysconfdir}/init.d/plc-devel stop - if [ -x /sbin/chkconfig ] ; then - /sbin/chkconfig plc-devel off - /sbin/chkconfig --del plc-devel - fi -fi -%endif - %files %defattr(-,root,root,-) # Host startup script and configuration file @@ -235,23 +153,11 @@ fi %dir /plc/data %config(noreplace) /plc/data/* -%if %{build_devel} -%files devel -%defattr(-,root,root,-) -# Host startup script and configuration file -%{_sysconfdir}/init.d/plc-devel -%{_sysconfdir}/sysconfig/plc-devel - -# Root filesystem -/plc/devel/root.img -/plc/devel/root - -# Data directory -%dir /plc/devel/data -%config(noreplace) /plc/devel/data/* -%endif - %changelog +* Fri Jan 19 2007 Mark Huang - 0.5-3 +- Split off myplc-devel into separate spec file, so that it can be + built standalone. + * Tue Aug 22 2006 Mark Huang - 0.4-3, 0.5-3 - MyPLC 0.4 RC3. - Fix upgrade path from RC1. -- 2.43.0