⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 一个功能全面的电子邮件客户端
💻
📖 第 1 页 / 共 2 页
字号:
# Hope fuly you dont need to edit anyt thing past this point, but if you see# something down here that dosnt work on your system, then fixit (in ya know# how) and send me a note <magister@kfa.cx>. Ive tryed to make it as smart# as i could so we wouldnt need a configure script :).#******** The makefile should be a dependant.  That way, when it changes,#******** everything gets recompiled.############################################################################.SUFFIXES : .cpp .c.cpp.o :	$(CC) $(OPTIONS) $(INCLUDES) -c $<.c.o :	$(CC) $(OPTIONS) $(INCLUDES) -c $<all : $(PROGRAM)$(PROGRAM) : c-client.a compilecount	@$(MAKE) -C $(SRCDIR) $(SUBMAKEALL)	@if $(TESTBIN) "$(DEBUG)" = "-1" ; then \	  if $(TESTBIN) -e /usr/bin/strip ; then \	    /usr/bin/strip $(BASEDIR)/$(PROGRAM); \	  fi \	fiifeq (Makefile.conf,$(wildcard Makefile.conf))  include Makefile.confendifdepend :	$(MAKE) depend -C $(SRCDIR) $(SUBMAKEALL)compilecount :	@# a build counter wanted by Deimos, only tempoary	@# Mesures all complete and incomplete builds	@if $(TESTBIN) ! -e $(COMPCOUNTFILE) ; then \	  echo "the compile cound file does not exist or was deleted, makeing a new one."; \	  echo "1" > $(COMPCOUNTFILE); \	else \	  oldc=`cat  $(COMPCOUNTFILE)`; \	  let newc=$$oldc+1; \	  echo "$$newc" >  $(COMPCOUNTFILE); \	  echo "Current number of builds: $$newc"; \	finumofbuilds :	@# Its easer to refrance vars when wraped in an if	@if $(TESTBIN) -e  $(COMPCOUNTFILE) ; then \	  numofbuilds=`cat  $(COMPCOUNTFILE)`; \	  echo "Currently at $$numofbuilds builds for $(PROGRAM)"; \	else \	  echo "No build history, maby you deleted  $(COMPCOUNTFILE) since you last compile"; \	fidist : distclean 	cd $(BASEDIR)	rm -Rf $(DIST)	mkdir $(DIST)	cp -pr $(FILESTOSAVE) $(DISTDIR)	$(MAKE) cvsclean	tar -cf $(DIST).tar $(DIST)	gzip -9 $(DIST).tar	rm -Rf $(DIST)bindist : all	cd $(BASEDIR)	rm -Rf $(BINDIST)	mkdir $(BINDIST)	cp -pr $(BINFILESTOSAVE) $(BINDISTDIR)	$(MAKE) cvsclean	tar -cf $(BINDIST).tar $(BINDIST)	gzip -9 $(BINDIST).tar	rm -Rf $(BINDIST)snap : distclean	cd $(BASEDIR)	rm -Rf $(PROGRAM)	mkdir $(PROGRAM)	cp -dpr $(FILESTOSAVE) $(PROGRAM)	$(MAKE) cvsclean	tar -cf $(SNAP).tar $(PROGRAM)	gzip -9 $(SNAP).tar	rm -Rf $(PROGRAM)# this is only for making a distrubution with out the CVS directoryscvsclean :	@echo "***** Removing the CVS directorys *****"	@if $(TESTBIN) -d $(BASEDIR)/$(PROGRAM) ; then\	 cd $(BASEDIR)/$(PROGRAM);\	 files=`find`;\	 touch temp.dirs;\	 for dir in $$files; do\	  if $(TESTBIN) -d $$dir ; then\	   echo $$dir >> temp.dirs;\	  fi;\	 done;\	 dirs=`cat temp.dirs | grep CVS`;\	 rm -f temp.dirs;\	 for directory in $$dirs; do\	  if $(TESTBIN) -d $(BASEDIR)/$(PROGRAM)/$$directory ; then\	   rm -Rf $(BASEDIR)/$(PROGRAM)/$$directory;\	  fi;\	 done;\	else \	 if $(TESTBIN) -d $(BASEDIR)/$(DIST) ; then\	  cd $(BASEDIR)/$(DIST);\	  files=`find`;\	  touch temp.dirs;\	  for dir in $$files; do\	   if $(TESTBIN) -d $$dir ; then\	    echo $$dir >> temp.dirs;\	   fi;\	  done;\	  dirs=`cat temp.dirs | grep CVS`;\	  rm -f temp.dirs;\	  for directory in $$dirs; do\	   if $(TESTBIN) -d $(BASEDIR)/$(DIST)/$$directory ; then\	    rm -Rf $(BASEDIR)/$(DIST)/$$directory;\	   fi;\	  done;\	 else\	  if $(TESTBIN) -d $(BASEDIR)/$(BINDIST) ; then\	   cd $(BASEDIR)/$(BINDIST);\	   files=`find`;\	   touch temp.dirs;\	   for dir in $$files; do\	    if $(TESTBIN) -d $$dir ; then\	     echo $$dir >> temp.dirs;\	    fi;\	   done;\	   dirs=`cat temp.dirs | grep CVS`;\	   rm -f temp.dirs;\	   for directory in $$dirs; do\	    if $(TESTBIN) -d $(BASEDIR)/$(BINDIST)/$$directory ; then\	     rm -Rf $(BASEDIR)/$(BINDIST)/$$directory;\	    fi;\	   done;\	  fi;\	 fi;\	filove :	@echo "Not war?"distclean : clean imapclean	rm -Rf Makefile.inc $(DIST)* $(PROGRAM)* $(PROGRAM)*.tar.* $(PATCHDIR)/*.patched	@for dir in $(CLEANDIRS); do \	  (cd $$dir ; $(MAKE) distclean); \	doneclean :	rm -Rf *.o *~ .*~ core DEADJOE .#*	@for dir in $(CLEANDIRS); do \	  (cd $$dir ; $(MAKE) clean); \	doneimapclean:	cd $(BASEDIR)/imap	$(MAKE) -C $(IMAPDIR) cleanc-client.a:  c-client-link c-client-patch	cd $(BASEDIR)/imap	$(MAKE) -C $(IMAPDIR) $(IMAPTARGET)c-client-link: imap-link	@if $(TESTBIN) ! -L c-client ; then \		ln -sf $(IMAPDIR)/c-client c-client ; \	fiimap-link: untar-imap	@if $(TESTBIN) ! -L $(IMAPDIR) ; then \		ln -sf imap-$(IMAPVER) $(IMAPDIR) ; \	fiuntar-imap:	@if $(TESTBIN) -d $(IMAPDIR) ; then \		if $(TESTBIN) ! -L $(IMAPDIR) ; then \			echo "Deleting old IMAP directory as it really should be a link!" ; \			rm -rf $(IMAPDIR) ; \		fi ; \	fi	@if $(TESTBIN) ! -d $(IMAPDIR)-$(IMAPVER) ; then \		echo "Since we need to extract the c-client code, we'll do so now..." ; \		gzip -dc $(IMAPFILE) | tar xfv - ; \	fic-client-patch:	cd $(IMAPDIR)-$(IMAPVER)/src/c-client	@if $(TESTBIN) ! -f $(C-CLIENT-PATCH).patched ; then \		echo "Patching C-Client version $(IMAPVER) source code..." ; \		cat $(C-CLIENT-PATCH) | $(PATCH) ; \		$(MAKE) $(C-CLIENT-PATCH).patched ; \	fi ;$(C-CLIENT-PATCH).patched:	date > $(C-CLIENT-PATCH).patchedinstall :	@if $(TESTBIN) ! -f $(BASEDIR)/$(PROGRAM) ; then \	  echo "*** Warning Proceeding will cause the $(PROGRAM) ***";\	  echo "***   To be owned by root, Wate 5 seconds to continue or ***"; \	  echo "***   Ctrl-C to exit.                                    ***"; \	  sleep 5;\	  $(MAKE) all; \	fi	(cd $(BASEDIR) ; cp -dpRf $(PROGRAM) $(PROGRAMINSTALLDIR))	@echo "****************************************************"	@echo "The exec has been placed in $(PROGRAMINSTALLDIR)"	@echo "****************************************************"	@echo	@if $(TESTBIN) -n "$(DOCINSTALLDIR)" ; then \	  rm -Rf $(DOCINSTALLDIR); \	  mkdir $(DOCINSTALLDIR); \	  cp COPYING README $(DOCINSTALLDIR); \	  if $(TESTBIN) -n "$(DOCDIR)" ; then \	    cd "$(DOCDIR)"; \	    cp -dpR * $(DOCINSTALLDIR); \	  fi; \	fi	@echo "**********************************************"	@echo "Documents have been placed in $(DOCINSTALLDIR)"	@echo "**********************************************"	@echo	@if $(TESTBIN) -n "$(OTHERINSTALLDIR)" ; then \	  rm -Rf $(OTHERINSTALLDIR); \	  mkdir $(OTHERINSTALLDIR); \	  for FILE in $(OTHERINSTALLFILES); do \	    cp -dpR $$FILE $(OTHERINSTALLDIR); \	  done; \	fi	@echo "*****************************************************"	@echo "All other files needed to be installed were installed"	@echo "to: $(OTHERINSTALLDIR)"	@echo "*****************************************************"uninstall-less : checkforroot	@if $(TESTBIN) -z "$(OOW_UNINST_NODELAY)"; then \	  echo "**** Uninstalling $(PROGRAM), any current or older versions in"; \	  echo "**** '$(PROGRAMINSTALLDIR)'. This will remove just the binary"; \	  echo "**** If you want the documentation and the extra files uninstalled"; \	  echo "**** run 'make uninstall-more'"; \	  echo " ** pausing for 5 seconds **"; \	  sleep 5; \	fi	rm -fv $(PROGRAMINSTALLDIR)/$(PROGRAM)uninstall-more : checkforroot	@echo "**** Uninstalling current $(PROGRAM), Doc's, and Extra's (pics and config files)"	@echo "**** Make sure you have not modifyed any of the files that were installed"	@echo "**** Also make sure up have your settings in $(OTHERINSTALLDIR)"	@echo "**** backed up, THEY WILL BE DELETED"	@echo "**** If not press Enter, to uninstall. Ctrl-C to quit now."	@read junk	@echo "*** Locating and Removing $(PROGRAM) ***"	@for directory in $(KNOWNPREFIXES); do \	  if $(TESTBIN) -d $$directory ; then \	    echo "Checking $$directory for installed $(PROGRAM) files"; \	    if $(TESTBIN) -f $$directory/bin/$(PROGRAM) ; then \	      rm -fv $$directory/bin/$(PROGRAM); \	    fi; \	    if $(TESTBIN) -d $$directory/doc/$(PROGRAM) ; then \	      rm -fvr $$directory/doc/$(PROGRAM); \	    fi; \	    if $(TESTBIN) -d $$directory/share/$(PROGRAM) ; then \	      rm -fvr $$directory/share/$(PROGRAM); \	    fi; \	  fi; \	doneuninstall : uninstall-less	@echo "*========--------uninstallation complet--------========*"utils :	@if $(TESTBIN) -n "$(SUBDIRS)"; then \	  for dir in '$(SUBDIRS)'; do \	    (cd $$dir ; $(MAKE)); \	  done \	fifixclockskew :	find $(BASEDIR) -exec touch {} \;checkforroot :	@if $(TESTBIN) $(USERID) != 0 ; then \	  echo "*****************************************************"; \	  echo "**** You have to be root to excute this function ****"; \	  echo "*****************************************************"; \	  exit 1; \	fiallvars :	@echo "TESTBIN=$(TESTBIN)"	@echo "DEBUG=$(DEBUG)"	@echo "prefix=$(prefix)"	@echo "PROGRAM=$(PROGRAM)"	@echo "MAJOR=$(MAJOR)"	@echo "MINOR=$(MINOR)"	@echo "BUILD=$(BUILD)"	@echo "VERSION=$(VERSION)"	@echo "DATE=$(DATE)"	@echo "USERID=$(USERID)"	@echo "BASEDIR=$(BASEDIR)"	@echo "OS=$(OS)"	@echo "PROC=$(PROC)"	@echo "MACHINE=$(MACHINE)"	@echo "LIBC=$(LIBC)"	@echo "LIBCVER=$(LIBCVER)"	@echo "LINUXLIBC=$(LINUXLIBC)"	@echo "SNAP=$(SNAP)"	@echo "DIST=$(DIST)"	@echo "BINDISTB=$(BINDISTB)"	@echo "BINDIST=$(BINDIST)"	@echo "SNAPDIR=$(SNAPDIR)"	@echo "DISTDIR=$(DISTDIR)"	@echo "BINDISTDIR=$(BINDISTDIR)"	@echo "SRCDIR=$(SRCDIR)"	@echo "INCLUDE=$(INCLUDE)"	@echo "DOCDIR=$(DOCDIR)"	@echo "SUBDIRS=$(SUBDIRS)"	@echo "CLEANDIRS=$(CLEANDIRS)"	@echo "ALLDIRS=$(ALLDIRS)"	@echo "PROGRAMINSTALLDIR=$(PROGRAMINSTALLDIR)"	@echo "DOCINSTALLDIR=$(DOCINSTALLDIR)"	@echo "OTHERINSTALLDIR=$(OTHERINSTALLDIR)"	@echo "OTHERINSTALLFILES=$(OTHERINSTALLFILES)"	@echo "KNOWNPREFIXES=$(KNOWNPREFIXES)"	@echo "FILESTOSAVE=$(FILESTOSAVE)"	@echo "BINFILESTOSAVE=$(BINFILESTOSAVE)"	@echo "CC=$(CC)"	@echo "DEFINES=$(DEFINES)"	@echo "COPTIONS=$(COPTIONS)"	@echo "CFLAGS=$(CFLAGS)"	@echo "LIBS=$(LIBS)"	@echo "INCLUDES=$(INCLUDES)"	@echo "ALLINCLUDES=$(ALLINCLUDES)"	@echo "OBJECTS=$(OBJECTS)"	@echo "SUBMAKEALL=$(SUBMAKEALL)"	@echo "CONFIGURED=$(CONFIGURED)"	@echo "OPTLIBS=$(OPTLIBS)"	@echo "OPTDEFINES=$(OPTDEFINES)".PHONEY : all compilecount numofbuilds dist snap cvsclean distclean clean install uninstall-less uninstall-more uninstall utils fixclockskew checkforroot config allvars# DO NOT DELETE

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -