Files
amiga-smbfs/source_code/smakefile
T
obarthel d8adddb851 Updated to version 2.19
smb_proc_readdir_short() now updates the scan resume information for every directory entry it can process and actually uses the scan resume information when asked to resume scanning.

If the directory cache becomes stale before the contents have been processed, scanning will have to be restarted. smbfs now tells the server that the scan operation has been aborted before it is started again.

Directory scanning in combination with deletion operations can collapse if the directory cache becomes stale before all the relevant entries have been processed. You can now tune how long the cache will remain active, which previously was a period of 5 seconds. The current default is 10 seconds, which definitely helps. Use the new CACHEEXPIRES option to change how long the cache is considered good enough.
2019-02-23 12:26:49 +01:00

158 lines
5.3 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-2019 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 utillib
#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
###########################################################################
# Enable profiling support; note that this requires linking
# against "lib:scnb.lib" instead of "lib:sc.lib", just like
# it is necessary for the debug build.
#PROFILE_OPTIONS = profile code=far data=faronly
###############################################################################
# Note: if DEBUG_OPTIONS or PROFILE_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) $(PROFILE_OPTIONS) \
params=register idir=netinclude idir=include \
ignore=306 gst=system_headers.gst
LFLAGS = \
noicons batch \
define __CXM33=__UCXM33 define __CXD33=__UCXD33 \
define __CXM22=__UCXM22 define __CXD22=__UCXD22
###############################################################################
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)