"SfR Fresh" - the SfR Freeware/Shareware Archive

Member "trashcan-1.2.2d/Makefile" of archive trashcan-1.2.2d.tar.gz:


As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
    1 #===========================================================================
    2 # Trashcan 1.2 Copyright (C) 1996, 1997 - Ahmed Masud
    3 # All Rights Reserved.
    4 # See COPYING for details
    5 
    6 # ==========================================================================
    7 # Compiler settings
    8 # Uncomment below if your include files reside somewhere else
    9 # INCLUDE=-I/usr/gnu/include
   10 # Any libraries that may be needed
   11 # LIBS=
   12 
   13 COPTS= -O6
   14 
   15 # ==========================================================================
   16 # System settings 
   17 # Configuration file, not used for anything yet.
   18 # RMCONF=/etc/trash.conf
   19 
   20 # The root's trash can (no limits on this)
   21 SYSTRASH=/var/trash
   22 
   23 # The user's trash can, relative to her home directory
   24 LOCALTRASH=.trash
   25 
   26 # default maximum trashcan size
   27 DEFTRASHSIZE=5120
   28 
   29 # Environment variable to override the trashcan size
   30 ENVTRASHSIZE=TC_MAXSIZE
   31 
   32 
   33 # Compile in  ShellSmart Fascilities.  Read the Changes file and the 
   34 # man page for details.
   35 SHELLSMART=true
   36 
   37 # Environment variable to override the SHELLSMART fascilites
   38 ENVSHELLSMART=TC_SHELLSMART
   39 
   40 #===========================================================================
   41 # 
   42 # Don't edit anything below this line
   43 #
   44 include Version
   45 SRC=trashcan.c
   46 OBJ=trashcan.o
   47 DEPOPTS=-M -E
   48 EXEC=trashcan
   49 HEADERS= #version.h is autogenerated
   50 
   51 ifeq ($(SHELLSMART),true)
   52 COPTS+= -DSHELLSMART
   53 endif
   54 
   55 COPTS+= -DDEFTRASHSIZE=$(DEFTRASHSIZE) -DRMCONF=\"$(RMCONF)\" \
   56 	-DSYSTRASH=\"$(SYSTRASH)\" -DLOCALTRASH=\"$(LOCALTRASH)\" \
   57 	-DENVTRASHSIZE=\"$(ENVTRASHSIZE)\" -DENVSHELLSMART=\"$(ENVSHELLSMART)\"
   58 COPTS:= $(COPTS) -pipe -Wall -Wstrict-prototypes
   59 
   60 # Only for redistribution
   61 TAR=tar
   62 DISTRIBUTION=trashcan-$(VERSION).tar.gz
   63 SOURCEDIR=trashcan-$(VERSION)
   64 DOCS=README.1st COPYING Changes Version
   65 LSMSRC=trashcan.lsm
   66 LSMENTRY=trashcan-$(VERSION).lsm
   67 MANSRC=trashcan.man
   68 MAKEFILE=Makefile
   69 VERINFO=Version
   70 INSTALL=install.sh
   71 
   72 .c.o:
   73 	$(CC) $(COPTS) $(INCLUDE) -c $*.c -o $*.o
   74 
   75 
   76 default: version-info $(EXEC) docs
   77 
   78 $(EXEC): $(OBJ)
   79 	$(CC) $(LOPTS) -o $@ $(OBJ) $(LIBS)
   80 
   81 dep: depend
   82 
   83 depend: version.h
   84 	$(RM) -f .depend
   85 	touch .depend
   86 	$(CC) $(COPTS) $(DEPOPTS) $(INCLUDE) -c $(SRC) >> .depend
   87 
   88 clean:
   89 	$(RM) $(OBJ) $(EXEC) *~ core .depend .config version.h trashcan.1 config.h *.orig
   90 	touch .depend
   91 
   92 real-clean: clean
   93 	$(RM) ./trashcan ./rm $(DISTRIBUTION) mkman.sed
   94 
   95 install:
   96 	@$(INSTALL)
   97 
   98 classic-rm:
   99 	make clean
  100 	make COPTS="$(COPTS) -DCLASSIC_RM" EXEC=rm
  101 
  102 dist: distribution
  103 
  104 distribution: dist-dir
  105 	$(TAR) fcvz $(DISTRIBUTION) $(SOURCEDIR);
  106 	$(RM) -rf $(SOURCEDIR)/
  107 
  108 dist-dir: lsm-entry
  109 	(if ! test -d $(SOURCEDIR); then mkdir $(SOURCEDIR); fi)
  110 	$(RM) -f $(SOURCEDIR)/*
  111 	cp $(MAKEFILE) $(VERINFO) $(MANSRC) $(HEADERS) $(SRC) \
  112 		$(DOCS) $(INSTALL) $(LSMSRC) $(LSMENTRY) $(SOURCEDIR)
  113 	touch $(SOURCEDIR)/.depend
  114 	(cd $(SOURCEDIR); make version.h mkman.sed;)
  115 
  116 lsm-entry: $(LSMSRC)
  117 	$(RM) $(LSMENTRY)
  118 	cat $(LSMSRC) | sed -e s/LSMDATE/"`date +%d%b%y | awk '{ print toupper($$1) }'`"/g \
  119 			  -e s/LSMVER/$(VERSION)/g > $(LSMENTRY)
  120 
  121 version-info: version.h
  122 	touch .config
  123 
  124 version.h:
  125 	(if [ ! -f .config ] || [ ! -f version.h ]; then \
  126 	$(RM) version.h ; \
  127 	touch version.h ; \
  128 	cut -d. -f1-2 Version | sed -e s/^/#define\ / -e s/=/\ \"/ -e s/\$$/\"/ >> version.h ; \
  129 	cut -d. -f3 Version | sed -e s/^/#define\ MINOR\ \"/ -e s/\$$/\"/ >> version.h ; \
  130 	fi)
  131 
  132 docs:	trashcan.1
  133 
  134 trashcan.1: mkman.sed trashcan.man
  135 	$(RM) trashcan.1
  136 	sed -f mkman.sed trashcan.man > trashcan.1
  137 
  138 mkman.sed: 
  139 	@$(RM) mkman.sed
  140 	@touch mkman.sed
  141 	@echo "s/@VERSION@/$(VERSION)/g" >> mkman.sed
  142 	@echo "s/@DATE@/Compiled on: `date`/g" >> mkman.sed
  143 	@echo "s/@DEFTRASHSIZE@/$(DEFTRASHSIZE)/g" >> mkman.sed
  144 	@echo "s/@ENVTRASHSIZE@/$(ENVTRASHSIZE)/g" >> mkman.sed
  145 	@echo "s,@SYSTRASH@,$(SYSTRASH),g" >> mkman.sed
  146 	@echo "s/@LOCALTRASH@/$(LOCALTRASH)/g" >> mkman.sed
  147 ifeq ($(SHELLSMART),true)
  148 	@echo "s,@SHELLSMART@,true,g" >> mkman.sed
  149 	@echo "s/@ENVSHELLSMART@/$(ENVSHELLSMART)/g" >> mkman.sed
  150 else
  151 	@echo "s,@SHELLSMART@,false,g" >> mkman.sed
  152 	@echo "s/@ENVSHELLSMART@/$(ENVTRASHSIZE)/g" >> mkman.sed
  153 endif
  154 include .depend
  155 
  156 
  157 
  158 
  159 
  160 
  161 
  162 
  163