home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1998 #6
/
amigamamagazinepolishissue1998.iso
/
disks
/
misc
/
device-handler
/
source
/
smakefile
< prev
Wrap
Makefile
|
1981-06-29
|
5KB
|
202 lines
#!sc:c/smake
#
#####################################################################
#
# $VER: smakefile 6.1 (02 Jun 1995)
#
# device-handler - raw device access
#
# (C) Copyright 1995 Marius Gröger
# All Rights Reserved
#
# $HISTORY:
#
# 02 Jun 1995 : 006.001 : created
#
#####################################################################
#####################################################################
#
# installation drawer and names of device
#
INSTALL_DIR = SYS:L
HANDLER_DIR = /l
BASENAME = device
NAME = device-handler
VERSION = 37
#
#####################################################################
#####################################################################
#
# Aminet infos
#
AN_AUTHOR = mag@sysgo.de
AN_UPLOADER = ruppert@vs3.informatik.fh-wiesbaden.de
AN_SHORT = AmigaDOS device for raw device access
AN_TYPE = disk/misc
#
#####################################################################
#####################################################################
#
# following stuff is your configuration
#
LIBS = LIB LIB:amiga.lib LIB lib:sc.lib LIB lib:debug.lib
CINCLUDES =
ASMINCLUDES = INCDIR="INCLUDEA:"
CPUSUFFIX = 020 # 000 010 020 030 040 ANY
CPUCCOPT = CPU=68$(CPUSUFFIX)
CP = C:Copy
MV = C:Rename
RM = C:Delete >NIL:
LD = sc:c/slink
CC = sc:c/sc
AS = sc:c/sc
MAKE = sc:c/smake
BUMPREV = C:bumprev
PROTECT = protect
BUILD_AMINET= /s/build-aminet
ECHO = Echo
#
#####################################################################
#####################################################################
#
# assembler/compiler flags
#
# this applies to normal and optimized compilation:
#
STDFLAGS = $(CINCLUDES) NOMULTIPLEINCLUDES ERRREXX COMMENTNEST NOSTKCHK NOCHKABORT\
SMALLCODE SMALLDATA VERBOSE NOICONS STRICT ANSI
#
# this applies only to normal compilation:
#
NORMCFLAGS = $(STDFLAGS)
#
# this applies only to optimized compilation:
#
OPTCFLAGS = $(STDFLAGS) $(CPUCCOPT) PARAMETERS=REGISTERS OPT OPTTIME OPTINLINE\
OPTSCHEDULE STRINGMERGE STRUCTUREEQUIVALENCE
#
# this applies to assembler compilation
#
AFLAGS = $(ASMINCLUDES) VERBOSE SMALLCODE SMALLDATA
#
#####################################################################
#####################################################################
#
# linkage flags
#
LDFLAGS = NOICONS SC SD ND $(LIBS) TO $(HANDLER_DIR)/$(NAME)
OPTLDFLAGS = NOICONS SC SD ND $(LIBS) TO $(HANDLER_DIR)/$(NAME).$(CPUSUFFIX)
#
#####################################################################
#####################################################################
#
# the object files
#
NORMOBJ=device-handler.no
OPTOBJ=device-handler.opt$(CPUSUFFIX)
#
#####################################################################
#####################################################################
#
# rules
#
# compile a file normally
#
.c.no:
$(CC) $(NORMCFLAGS) $*.c
-@$(RM) $*.no
@$(MV) $*.o $*.no
#
# compile a file optimizing
#
.c.opt$(CPUSUFFIX):
$(CC) $(OPTCFLAGS) $*.c
-@$(RM) $*.opt$(CPUSUFFIX)
@$(MV) $*.o $*.opt$(CPUSUFFIX)
#
# assemble a file
#
.asm.o:
$(AS) $(AFLAGS) $*.asm
#
#####################################################################
#####################################################################
#
# targets
#
help:
-@$(ECHO) "Usage:"
-@$(ECHO) "To make an unoptimized version"
-@$(ECHO) " $(MAKE) all"
-@$(ECHO) "To make an optimized version"
-@$(ECHO) " $(MAKE) all_opt"
-@$(ECHO) "To install an unoptimized version"
-@$(ECHO) " $(MAKE) install"
-@$(ECHO) "To install an optimized version"
-@$(ECHO) " $(MAKE) install"
-@$(ECHO) "To increment the revision"
-@$(ECHO) " $(MAKE) newrev"
-@$(ECHO) "To remove all intermediate files for unoptimized the version"
-@$(ECHO) " $(MAKE) clean_norm"
-@$(ECHO) "To remove all intermediate files for optimized the version"
-@$(ECHO) " $(MAKE) clean_opt"
-@$(ECHO) "To remove all intermediate files"
-@$(ECHO) " $(MAKE) clean"
install: all
$(CP) $(HANDLER_DIR)/$(NAME) $(INSTALL_DIR)/$(NAME)
install_opt: all_opt
$(CP) $(HANDLER_DIR)/$(NAME).$(CPUSUFFIX) $(INSTALL_DIR)/$(NAME)
all: $(HANDLER_DIR)/$(NAME)
all_opt: $(HANDLER_DIR)/$(NAME).$(CPUSUFFIX)
newrev:
$(BUMPREV) $(VERSION) $(BASENAME)
clean_norm:
-@$(RM) *.o
-@$(RM) *.no
clean_opt:
-@$(RM) *.o
-@$(RM) *.opt*
clean: clean_norm clean_opt
release:
$(MAKE) CPUSUFFIX=000 all_opt
$(MAKE) CPUSUFFIX=020 all_opt
$(MAKE) CPUSUFFIX=040 all_opt
$(BUILD_AMINET) "$(NAME)" "/ReadMe" "//$(NAME)" "$(AN_AUTHOR)" "$(AN_UPLOADER)" "$(AN_SHORT)" "$(AN_TYPE)" CLEAN
$(HANDLER_DIR)/$(NAME).$(CPUSUFFIX): $(OPTOBJ)
$(LD) $(OPTOBJ) $(OPTLDFLAGS)
$(PROTECT) $@ +p
$(HANDLER_DIR)/$(NAME): $(NORMOBJ)
$(LD) $(NORMOBJ) $(LDFLAGS)
$(PROTECT) $@ +p
#
#####################################################################
#####################################################################
#
# various dependencies
#
device-handler.opt$(CPUSUFFIX): device-handler.c
device-handler.o: device-handler.c
#
#####################################################################