mirror of
				https://github.com/xcat2/xcat-core.git
				synced 2025-10-31 03:12:30 +00:00 
			
		
		
		
	git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@1605 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
		
			
				
	
	
		
			128 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			RPMSpec
		
	
	
	
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			RPMSpec
		
	
	
	
	
	
| Summary: xCAT perl libraries
 | |
| Name: perl-xCAT
 | |
| Version: 2.1
 | |
| Release: snap%(date +"%Y%m%d%H%M")
 | |
| Epoch: 2
 | |
| License: EPL
 | |
| Group: System Environment/Libraries
 | |
| Source: perl-xCAT-2.1.tar.gz
 | |
| Packager: IBM Corp.
 | |
| Vendor: IBM Corp.
 | |
| Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}}
 | |
| Prefix: /opt/xcat
 | |
| BuildRoot: /var/tmp/%{name}-%{version}-%{release}-root
 | |
| %ifos linux
 | |
| BuildArch: noarch
 | |
| %endif
 | |
| 
 | |
| Provides: perl(xCAT) = %{version}
 | |
| 
 | |
| %description
 | |
| Provides perl xCAT libraries for core functionality.  Required for all xCAT installations.
 | |
| Includes xCAT::Table, xCAT::NodeRange, among others.
 | |
| 
 | |
| %prep -n perl-xCAT
 | |
| %setup -q
 | |
| %build
 | |
| # This phase is done in (for RH): /usr/src/redhat/BUILD/perl-xCAT-2.0
 | |
| # All of the tarball source has been unpacked there and is in the same file structure
 | |
| # as it is in svn.
 | |
| 
 | |
| # Build the pod version of the man pages for each DB table.  It puts them in the man5 subdir.
 | |
| # The convert the pods to man pages and html pages.
 | |
| ./db2man
 | |
| 
 | |
| # Convert pods to man pages, e.g.:  pod2man pods/man5/chain.5.pod share/man/man5/chain.1
 | |
| # for i in pods/*/*.pod; do
 | |
| #   man="share/man${i#pods}"         # the substitute form is not supported on aix:  ${i/pods/share\/man}
 | |
| #   mkdir -p ${man%/*}
 | |
| #   pod2man $i ${man%.pod}
 | |
| # done
 | |
| 
 | |
| %install
 | |
| # The install phase puts all of the files in the paths they should be in when the rpm is
 | |
| # installed on a system.  The RPM_BUILD_ROOT is a simulated root file system and usually
 | |
| # has a value like: /var/tmp/perl-xCAT-2.0-snap200802270932-root
 | |
| 
 | |
| rm -rf $RPM_BUILD_ROOT
 | |
| 
 | |
| mkdir -p $RPM_BUILD_ROOT/%{prefix}/lib/perl/xCAT/data
 | |
| mkdir -p $RPM_BUILD_ROOT/%{prefix}/share/doc/packages/perl-xCAT
 | |
| mkdir -p $RPM_BUILD_ROOT/%{prefix}/share/man/man5
 | |
| mkdir -p $RPM_BUILD_ROOT/%{prefix}/share/doc/man5
 | |
| 
 | |
| cp -r xCAT/* $RPM_BUILD_ROOT/%{prefix}/lib/perl/xCAT/
 | |
| chmod 644 $RPM_BUILD_ROOT/%{prefix}/lib/perl/xCAT/*
 | |
| chmod 644 $RPM_BUILD_ROOT/%{prefix}/lib/perl/xCAT/data/*
 | |
| 
 | |
| cp LICENSE.html $RPM_BUILD_ROOT/%{prefix}/share/doc/packages/perl-xCAT
 | |
| chmod 644 $RPM_BUILD_ROOT/%{prefix}/share/doc/packages/perl-xCAT/*
 | |
| 
 | |
| cp README $RPM_BUILD_ROOT/%{prefix}
 | |
| chmod 644 $RPM_BUILD_ROOT/%{prefix}/README
 | |
| 
 | |
| # These were built dynamically in the build phase
 | |
| cp share/man/man5/* $RPM_BUILD_ROOT/%{prefix}/share/man/man5
 | |
| chmod 644 $RPM_BUILD_ROOT/%{prefix}/share/man/man5/*
 | |
| cp share/doc/man5/* $RPM_BUILD_ROOT/%{prefix}/share/doc/man5
 | |
| chmod 644 $RPM_BUILD_ROOT/%{prefix}/share/doc/man5/*
 | |
| 
 | |
| %clean
 | |
| # This step does not happen until *after* the %files packaging below
 | |
| rm -rf $RPM_BUILD_ROOT
 | |
| 
 | |
| #find $RPM_BUILD_ROOT -type f | sed -e "s@$RPM_BUILD_ROOT@/@" > files.list
 | |
| 
 | |
| %files
 | |
| %defattr(-, root, root)
 | |
| #%doc LICENSE.html
 | |
| #%doc README
 | |
| # Just package everything that has been copied into RPM_BUILD_ROOT
 | |
| %{prefix}
 | |
| 
 | |
| %post
 | |
| %ifos linux
 | |
| if [ "$1" -gt 1 ]; then #Ugrade only, restart daemon and migrate settings
 | |
|    if [ -x /etc/init.d/xcatd ] && [ -f "/proc/cmdline" ]; then
 | |
|       . /etc/profile.d/xcat.sh
 | |
|       /etc/init.d/xcatd restart
 | |
|       #THE NEXT BIT SHOULD NOT BE RELEVANT TO RELEASE, IT SHOULD HELP A BETA INSTALL UPDATE GRACEFULLY
 | |
|       BOOTPCHECK=`tabdump bootparams|grep -v '^#node'`
 | |
|       if [ -z "$BOOTPCHECK" ]; then
 | |
|       echo -n "Old schema use detected, migrating settings, may take a while..."
 | |
|       for node in `nodels`; do
 | |
|          MIGSETTING=`nodels $node noderes.serialport|sed -e 's/^.*:.*:\s*//'`
 | |
|          nodech $node noderes.serialport=
 | |
|          if [ ! -z "$MIGSETTING" ]; then
 | |
|            nodech $node "nodehm.serialport=$MIGSETTING"
 | |
|          fi
 | |
|          MIGSETTING=`nodels $node noderes.kernel|sed -e 's/^.*:.*:\s*//'`
 | |
|          nodech $node noderes.kernel=
 | |
|          if [ ! -z "$MIGSETTING" ]; then
 | |
|            nodech $node "bootparams.kernel=$MIGSETTING"
 | |
|          fi
 | |
|          MIGSETTING=`nodels $node noderes.initrd|sed -e 's/^.*:.*:\s*//'`
 | |
|          nodech $node noderes.initrd=
 | |
|          if [ ! -z "$MIGSETTING" ]; then
 | |
|            nodech $node "bootparams.initrd=$MIGSETTING"
 | |
|          fi
 | |
|          MIGSETTING=`nodels $node noderes.kcmdline|sed -e 's/^.*:.*:\s*//'`
 | |
|          nodech $node noderes.kcmdline=
 | |
|          if [ ! -z "$MIGSETTING" ]; then
 | |
|            nodech $node "bootparams.kcmdline=$MIGSETTING"
 | |
|          fi
 | |
|       done
 | |
|       echo "Done"
 | |
|    fi
 | |
|    fi
 | |
| fi
 | |
| %endif
 | |
| 
 | |
| %changelog
 | |
| * Wed May 2 2007 - Norm Nott nott@us.ibm.com
 | |
| - Made changes to make this work on AIX
 | |
| 
 | |
| * Wed Jan 24 2007 Jarrod Johnson <jbjohnso@us.ibm.com>
 | |
| -It begins
 | |
| 
 |