📄 rpm.mk
字号:
#!/bin/make#****h* calc/rpm.mk## rpm.mk - Makefile for building rpm packages for calc## Copyright (C) 2003 Petteri Kettunen and Landon Curt Noll## Calc is open software; you can redistribute it and/or modify it under# the terms of the version 2.1 of the GNU Lesser General Public License# as published by the Free Software Foundation.## Calc is distributed in the hope that it will be useful, but WITHOUT# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General# Public License for more details.## A copy of version 2.1 of the GNU Lesser General Public License is# distributed with calc under the filename COPYING-LGPL. You should have# received a copy with calc; if not, write to Free Software Foundation, Inc.# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.#MAKEFILE_REV= $$Revision: 29.16 $$# @(#) $Id: rpm.mk,v 29.16 2006/09/18 06:33:50 chongo Exp $# @(#) $Source: /usr/local/src/cmd/calc/RCS/rpm.mk,v $## Under source code control: 2003/02/16 20:21:39# File existed as early as: 2003## chongo <was here> /\oo/\ http://www.isthe.com/chongo/# Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/## calculator by David I. Bell with help/mods from others# Makefile by Petteri Kettunen with modifications from Landon Curt Noll# setup#SHELL= /bin/shRPMBUILD_TOOL= rpmbuildTARCH= i686RPMBUILD_OPTION= -ba --target=${TARCH}RPM_TOOL= rpmMD5SUM= md5sumSHA1SUM= sha1sumSED= sedFIND= findGZIP_PROG= gzipTAR= tarRM= rmLS= lsCPIO= cpioCP= cpEGREP= egrepMKDIR= mkdirGREP= GREP# rpm-related parameters#PROJECT_NAME= calcPROJECT_VERSION=PROJECT_RELEASE=PROJECT= $(PROJECT_NAME)-$(PROJECT_VERSION)SPECFILE= $(PROJECT_NAME).specTARBALL= $(PROJECT).${TAR}.gzRPM686= $(PROJECT)-$(PROJECT_RELEASE).${TARCH}.rpmDRPM686= $(PROJECT_NAME)-devel-$(PROJECT_VERSION)-$(PROJECT_RELEASE).${TARCH}.rpmSRPM= $(PROJECT)-$(PROJECT_RELEASE).src.rpmTMPDIR= /var/tmpRPMDIR= /usr/src/redhatall: calc.spec ver_calc $(MAKE) -f rpm.mk PROJECT_VERSION="`./ver_calc`" \ PROJECT_RELEASE="`${SED} -n -e '/^Release:/s/^Release: *//p' \ calc.spec.in`" rpmpkgme: $(PROJECT_NAME)-spec.${TAR}.gzver_calc: $(MAKE) -f Makefile ver_calc.PHONY: versvers: $(MAKE) -f Makefile ver_calccalc.spec: calc.spec.in ver_calc ${RM} -f calc.spec ${SED} -e 's/<<<PROJECT_VERSION>>>/'"`./ver_calc`"/g \ calc.spec.in > calc.spec.PHONY: srcpkgsrcpkg: make_rhdir ${FIND} . -depth -print | ${EGREP} -v '/RCS|/CVS|/NOTES|\.gone' | \ ${CPIO} -dumpv "$(TMPDIR)/$(PROJECT)" (cd "$(TMPDIR)"; ${TAR} cf - "$(PROJECT)") | \ ${GZIP_PROG} -c > "$(RPMDIR)/SOURCES/$(TARBALL)" ${RM} -fr "$(TMPDIR)/$(PROJECT)".PHONY: rpmrpm: srcpkg calc.spec $(MAKE) -f Makefile clean ${CP} "$(SPECFILE)" "$(RPMDIR)/SPECS/$(SPECFILE)" ${RM} -f "$(RPMDIR)/RPMS/${TARCH}/$(RPM686)" ${RM} -f "$(RPMDIR)/RPMS/${TARCH}/$(DRPM686)" ${RM} -f "$(RPMDIR)/SRPMS/$(SRPM)" ${RPMBUILD_TOOL} ${RPMBUILD_OPTION} "$(RPMDIR)/SPECS/$(SPECFILE)" @if [ ! -f "$(RPMDIR)/SRPMS/$(SRPM)" ]; then \ echo "SRPMS/$(SRPM) not found" 1>&2; \ exit 3; \ fi @echo @echo "RPM package sizes:" @echo @cd $(RPMDIR); ${LS} -1s "RPMS/${TARCH}/$(RPM686)" \ "RPMS/${TARCH}/$(DRPM686)" "SRPMS/$(SRPM)" @echo @echo "RPM package md5 hashes:" @echo -@cd $(RPMDIR); ${MD5SUM} "RPMS/${TARCH}/$(RPM686)" \ "RPMS/${TARCH}/$(DRPM686)" "SRPMS/$(SRPM)" @echo @echo "RPM package sha1 hashes:" @echo -@cd $(RPMDIR); ${SHA1SUM} "RPMS/${TARCH}/$(RPM686)" \ "RPMS/${TARCH}/$(DRPM686)" "SRPMS/$(SRPM)" @echo @echo "RPM package locations:" @echo @${LS} -1 "$(RPMDIR)/RPMS/${TARCH}/$(RPM686)" \ "$(RPMDIR)/RPMS/${TARCH}/$(DRPM686)" "$(RPMDIR)/SRPMS/$(SRPM)" @echo @echo "All done! -- Jessica Noll, Age 2" @echo.PHONY: make_rhdirmake_rhdir: for i in "$(RPMDIR)" "$(RPMDIR)/RPMS" "$(RPMDIR)/SOURCES" \ "$(RPMDIR)/SPECS" "$(RPMDIR)/SRPMS" "$(RPMDIR)/BUILD"; do \ if [ ! -d "$$i" ] ; then \ ${MKDIR} -p "$$i"; \ fi; \ done;# date format for spec file.PHONY: logdatelogdate: echo "`date +'* %a %b %d %Y'` `whoami`".PHONY: chkpkgchkpkg: for i in "$(RPMDIR)/RPMS/${TARCH}/$(RPM686)" \ "$(RPMDIR)/RPMS/${TARCH}/$(DRPM686)" \ "$(RPMDIR)/SRPMS/$(SRPM)" ; do \ echo "***** start $$i" ; \ ${RPM_TOOL} -qpi "$$"i ; \ echo "***** files $$i" ; \ ${RPM_TOOL} -qpl "$$i" ; \ echo "***** end $$i" ; \ done ;.PHONY: chksyschksys: ${RPM_TOOL} -qa | ${GREP} "$(PROJECT_NAME)" ${RPM_TOOL} -qa | ${GREP} "$(PROJECT_NAME)-devel".PHONY: testtest: ver_calc @if [ X"`id -u`" != X"0" ]; then \ echo "test needs to install, must be root to test" 1>&2; \ exit 4; \ fi $(MAKE) -f rpm.mk PROJECT_VERSION="`./ver_calc`" installrpm chksys.PHONY: installrpminstallrpm: @if [ X"`id -u`" != X"0" ]; then \ echo "must be root to install RPMs" 1>&2; \ exit 5; \ fi ${RPM_TOOL} -ivh "$(RPMDIR)/RPMS/${TARCH}/$(RPM686)" ${RPM_TOOL} -ivh "$(RPMDIR)/RPMS/${TARCH}/$(DRPM686)".PHONY: uninstallrpmuninstallrpm: @if [ X"`id -u`" != X"0" ]; then \ echo "must be root to uninstall RPMs" 1>&2; \ exit 6; \ fi ${RPM_TOOL} -e "$(PROJECT_NAME)-devel" ${RPM_TOOL} -e "$(PROJECT_NAME)"$(PROJECT_NAME)-spec.${TAR}.gz: rpm.mk $(PROJECT_NAME).spec.in ${RM} -f "$@" ${TAR} cf - "$^" | ${GZIP_PROG} -c > "$@"#****
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -