Files
amiga-smbfs/source_code/smakefile
T
obarthel 4318e4d544 Updated to version 2.5
This version fixes the instant crash in the fully optimized 68k/020+ builds, which was cased by a missing __saveds keyword.
2018-12-16 10:23:32 +01:00

149 lines
4.9 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#
# :ts=4
#
# SMB file system wrapper for AmigaOS, using the AmiTCP V3 API
#
# Copyright (C) 2000-2018 by Olaf `Olsen' Barthel <obarthel -at- gmx -dot- net>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
#
# NOTE: In order to build smbfs you will need to obtain the AmiTCP
# SDK, or the equivalent for Miami/Miami Deluxe or Roadshow.
# From that SDK, copy the "netinclude" directory to the same
# directory you find this "smakefile" in. Next, modify this
# "smakefile", removing the "@ctags >tagfiles/$* $<" and
# "@type tagfiles/\#? >t:tags", "@copy t:tags """ and
# "@delete >nil: t:tags" lines if you don't have the "ctags"
# command installed.
#
.c.o:
sc $(CFLAGS) $<
@ctags >tagfiles/$* $<
.asm.o:
asm $(ASMFLAGS) $<
###############################################################################
PROJECT = smbfs
###############################################################################
#############################################################################
#
# Program version
#
#############################################################################
VERSION = 2
###############################################################################
OPTIMIZE = optimize opttime optinline optinlocal
CPU = any
#CPU = 060 optschedule
DEBUG = line
#DEBUG = symbolflush noopt
###########################################################################
# This enables full debugging support, which will significantly
# increase the size of the program and also make it run slower.
#
# Note that the debug build requires the "code=far data=faronly"
# option and linking against "lib:scnb.lib".
#
#DEBUG_OPTIONS = define=DEBUG define=DUMP_SMB code=far data=faronly
###############################################################################
# Note: if DEBUG_OPTIONS are enabled you will need to link smbfs against
# "lib:scnb.lib" rather than "lib:sc.lib".
LIBS = lib:sc.lib lib:amiga.lib lib:debug.lib
###############################################################################
CFLAGS = \
idlen=64 comnest streq strmerge nostkchk \
$(OPTIMIZE) cpu=$(CPU) debug=$(DEBUG) $(DEBUG_OPTIONS) \
params=register idir=netinclude idir=include \
ignore=306 gst=system_headers.gst
LFLAGS = \
noicons batch
###############################################################################
OBJS = \
main.o proc.o smb_abstraction.o sock.o crypt.o quad_math.o dump_smb.o \
cp437.o cp850.o splay.o swap_stack_and_call.o
###############################################################################
all: tagfiles system_headers.gst $(PROJECT)
tagfiles:
makedir $@
$(PROJECT): $(OBJS) system_headers.gst Assert.o
slink $(OBJS) to $@.debug lib $(LIBS) Assert.o $(LFLAGS) \
map $(PROJECT).map,fhx fwidth 32 pwidth 32 swidth 32
slink $@.debug to $@ noicons nodebug
@type tagfiles/\#? >t:tags
@copy t:tags ""
@delete >nil: t:tags
system_headers.gst: system_headers.h system_headers.c
gst unload $@
sc $(CFLAGS) nodebug noobjname nogst makegst=$@ system_headers.c
exall-example: exall-example.c
sc link exall-example.c
###############################################################################
assert.o : assert.c
cp437.o : cp437.c
cp850.o : cp850.c
crypt.o : crypt.c system_headers.h assert.h quad_math.h splay.h smbfs.h
dump_smb.o : dump_smb.c system_headers.h assert.h quad_math.h splay.h smbfs.h dump_smb.h
main.o : main.c system_headers.h assert.h quad_math.h splay.h smbfs.h smb_abstraction.h cp437.h cp850.h errors.h dump_smb.h smbfs_rev.h
proc.o : proc.c system_headers.h assert.h quad_math.h splay.h smbfs.h errors.h smbfs_rev.h
quad_math.o : quad_math.c quad_math.h
smb_abstraction.o : smb_abstraction.c system_headers.h assert.h quad_math.h splay.h smbfs.h errors.h smb_abstraction.h
sock.o : sock.c system_headers.h assert.h quad_math.h splay.h smbfs.h smb_abstraction.h dump_smb.h errors.h
splay.o : splay.c system_headers.h assert.h quad_math.h splay.h smbfs.h
###############################################################################
clean:
-delete \#?.o $(PROJECT)(%|.debug) exall-example(%|.lnk)
realclean: clean
-delete system_headers.gst tags tagfiles \#?.map ID all
###############################################################################
mkid:
mkid -v \#?.(c|h|a|asm|i) include/smb/\#?.h
update:
mkid -v -u
version:
bumprev $(VERSION) $(PROJECT)