-include ../../../../../branch_src_sharedMemory_integration/Tools/MConfig/.config
include ../../../../../include/MakeConfig
include ../MakeConfig

rm=/bin/rm -f
AR= $(MYAR) crv
RANLIB= $(MYRANLIB)
CC=$(MYCC)
LIBNAME= ../../../../../lib/libSamba$(TOOLCHAIN_VER).a
CFLAGS+= -I./ -I./include  -I./popt
# debug flag
#CFLAGS+= -I./ -I./include  -I./popt -g

SRCS = ./jssmb.c
OBJS = ./jssmb.o

POPT_OBJS=popt/findme.o popt/popt.o popt/poptconfig.o \
	popt/popthelp.o popt/poptparse.o

JSSMB_OBJ = $(OBJS) dynconfig.o intl/lang_tdb.o lib/access.o lib/adt_tree.o lib/arc4.o lib/audit.o lib/bitmap.o lib/charcnv.o lib/clobber.o lib/crc32.o lib/data_blob.o lib/debug.o lib/dmallocmsg.o lib/dprintf.o lib/dummyroot.o lib/dummysmbd.o lib/events.o lib/fault.o lib/fsusage.o lib/gencache.o lib/genrand.o lib/getsmbpass.o lib/hmacmd5.o lib/iconv.o lib/interface.o lib/interfaces.o lib/ldap_escape.o lib/md4.o lib/md5.o lib/messages.o lib/module.o lib/ms_fnmatch.o lib/pam_errors.o lib/pidfile.o lib/popt_common.o lib/readline.o lib/repdir.o lib/replace.o lib/replace1.o lib/secace.o lib/secacl.o lib/secdesc.o lib/select.o lib/sendfile.o lib/sharesec.o lib/signal.o lib/smbrun.o lib/snprintf.o lib/sock_exec.o lib/substitute.o lib/system.o lib/system_smbd.o lib/talloc.o lib/tallocmsg.o lib/time.o lib/timegm.o lib/ufc.o lib/username.o lib/util.o lib/util_file.o lib/util_pw.o lib/util_seaccess.o lib/util_sec.o lib/util_sid.o lib/util_sock.o lib/util_str.o lib/util_unistr.o lib/util_uuid.o lib/version.o lib/wins_srv.o lib/xfile.o libads/ads_status.o libads/dns.o libads/kerberos.o libads/krb5_errs.o libsmb/asn1.o libsmb/cliconnect.o libsmb/clidfs.o libsmb/clidgram.o libsmb/clientgen.o libsmb/clierror.o libsmb/clifile.o libsmb/clifsinfo.o libsmb/clikrb5.o libsmb/clilist.o libsmb/climessage.o libsmb/clioplock.o libsmb/cliprint.o libsmb/cliquota.o libsmb/clirap.o libsmb/clirap2.o libsmb/clireadwrite.o libsmb/clisecdesc.o libsmb/clispnego.o libsmb/clistr.o libsmb/clitrans.o libsmb/conncache.o libsmb/credentials.o libsmb/dcerpc_err.o libsmb/doserr.o libsmb/errormap.o libsmb/namecache.o libsmb/namequery.o libsmb/nmblib.o libsmb/nterr.o libsmb/ntlm_check.o libsmb/ntlmssp.o libsmb/ntlmssp_parse.o libsmb/ntlmssp_sign.o libsmb/pwd_cache.o libsmb/smb_signing.o libsmb/smbdes.o libsmb/smbencrypt.o libsmb/smberr.o libsmb/unexpected.o nsswitch/wb_client.o nsswitch/wb_common.o param/loadparm.o param/params.o passdb/machine_sid.o passdb/secrets.o profile/profile.o rpc_client/cli_netlogon.o rpc_client/cli_pipe.o rpc_client/cli_srvsvc.o rpc_parse/parse_misc.o rpc_parse/parse_net.o rpc_parse/parse_prs.o rpc_parse/parse_rpc.o rpc_parse/parse_sec.o rpc_parse/parse_srv.o tdb/spinlock.o tdb/tdb.o tdb/tdbback.o tdb/tdbutil.o client/clitar.o

ifeq ($(CREATE_EXEC_FILE),YES)
    CFLAGS += -DEXECUTION_FILE
else
    ifeq ($(ADD_PDC_SUPPORT),YES)
        CFLAGS += -DPDC_SUPPORT
        JSSMB_OBJ += $(POPT_OBJS)
    endif
endif

.c.o:
	$(rm) -f $@
	$(CC) $(CFLAGS) $(DEBUGFLAG) $(WARNING) -c $*.c
### following configure for build execution file
ifeq ($(CREATE_EXEC_FILE),YES)
#cp=/bin/cp -f
all : bin/jssmb
#	$(cp) bin/jssmb ../../../../Unit_test/GrandMa_DG_StateMachine/jssmb
bin/jssmb: $(JSSMB_OBJ) $(POPT_OBJS) 
	@echo Linking $@
	@$(CC) $(FLAGS)  -o $@ $(JSSMB_OBJ) $(LDFLAGS) $(DYNEXP) $(TERMLDFLAGS) $(TERMLIBS) $(LIBS) $(POPT_OBJS) $(KRB5LIBS) $(LDAP_LIBS)
else
### following configure for build library file
all : $(LIBNAME)
 
$(LIBNAME) : $(JSSMB_OBJ)
	$(rm) $@
	$(AR) $@ $(JSSMB_OBJ)
	$(RANLIB) $@
endif
clean:
	$(rm) $(OBJS) $(LIBNAME)
