xref: /linux/fs/smb/client/Makefile (revision 58ac796bb3c0f7b8295046404629724b68b40fa0)
138c8a9a5SSteve French# SPDX-License-Identifier: GPL-2.0
238c8a9a5SSteve French#
338c8a9a5SSteve French# Makefile for Linux CIFS/SMB2/SMB3 VFS client
438c8a9a5SSteve French#
538c8a9a5SSteve Frenchccflags-y += -I$(src)		# needed for trace events
638c8a9a5SSteve Frenchobj-$(CONFIG_CIFS) += cifs.o
738c8a9a5SSteve French
838c8a9a5SSteve Frenchcifs-y := trace.o cifsfs.o cifs_debug.o connect.o dir.o file.o \
938c8a9a5SSteve French	  inode.o link.o misc.o netmisc.o smbencrypt.o transport.o \
10c825f6b7SHuiwen He	  cached_dir.o cifs_unicode.o cifsencrypt.o \
1138c8a9a5SSteve French	  readdir.o ioctl.o sess.o export.o unc.o winucase.o \
1238c8a9a5SSteve French	  smb2ops.o smb2maperror.o smb2transport.o \
1338c8a9a5SSteve French	  smb2misc.o smb2pdu.o smb2inode.o smb2file.o cifsacl.o fs_context.o \
14348a04a8SPaulo Alcantara	  dns_resolve.o cifs_spnego_negtokeninit.asn1.o asn1.o \
15c520ba75SPaulo Alcantara	  namespace.o reparse.o
1638c8a9a5SSteve French
1738c8a9a5SSteve French$(obj)/asn1.o: $(obj)/cifs_spnego_negtokeninit.asn1.h
1838c8a9a5SSteve French
1938c8a9a5SSteve French$(obj)/cifs_spnego_negtokeninit.asn1.o: $(obj)/cifs_spnego_negtokeninit.asn1.c $(obj)/cifs_spnego_negtokeninit.asn1.h
2038c8a9a5SSteve French
2138c8a9a5SSteve Frenchcifs-$(CONFIG_CIFS_XATTR) += xattr.o
2238c8a9a5SSteve French
2338c8a9a5SSteve Frenchcifs-$(CONFIG_CIFS_UPCALL) += cifs_spnego.o
2438c8a9a5SSteve French
25348a04a8SPaulo Alcantaracifs-$(CONFIG_CIFS_DFS_UPCALL) += dfs_cache.o dfs.o
2638c8a9a5SSteve French
2738c8a9a5SSteve Frenchcifs-$(CONFIG_CIFS_SWN_UPCALL) += netlink.o cifs_swn.o
2838c8a9a5SSteve French
2938c8a9a5SSteve Frenchcifs-$(CONFIG_CIFS_FSCACHE) += fscache.o
3038c8a9a5SSteve French
3138c8a9a5SSteve Frenchcifs-$(CONFIG_CIFS_SMB_DIRECT) += smbdirect.o
3238c8a9a5SSteve French
3338c8a9a5SSteve Frenchcifs-$(CONFIG_CIFS_ROOT) += cifsroot.o
3438c8a9a5SSteve French
35b09eab52SDavid Howellscifs-$(CONFIG_CIFS_ALLOW_INSECURE_LEGACY) += \
36b09eab52SDavid Howells	cifssmb.o \
37e5ac3ff6SDavid Howells	smb1debug.o \
38b6fe9237SDavid Howells	smb1encrypt.o \
396fb4e46dSDavid Howells	smb1maperror.o \
403739f6d2SDavid Howells	smb1misc.o \
41b09eab52SDavid Howells	smb1ops.o \
42dec5a519SDavid Howells	smb1session.o \
43b09eab52SDavid Howells	smb1transport.o
44d14bbfffSSteve French
45d14bbfffSSteve Frenchcifs-$(CONFIG_CIFS_COMPRESSION) += compress.o compress/lz77.o
46c527e13aSDavid Howells
47415c5b8cSHuiwen Heifneq ($(CONFIG_CIFS_ALLOW_INSECURE_LEGACY),)
48415c5b8cSHuiwen He#
49*58ac796bSHuiwen He# Build the SMB1 error mapping tables from nterr.h and smberr.h
50415c5b8cSHuiwen He#
51*58ac796bSHuiwen Hesmb1-gen-y := smb1_mapping_table.c \
52*58ac796bSHuiwen He	      smb1_err_dos_map.c \
53*58ac796bSHuiwen He	      smb1_err_srv_map.c
54415c5b8cSHuiwen He
55415c5b8cSHuiwen He$(obj)/smb1_mapping_table.c: $(src)/nterr.h $(src)/gen_smb1_mapping FORCE
56415c5b8cSHuiwen He	$(call if_changed,gen_smb1_mapping)
57415c5b8cSHuiwen He
58*58ac796bSHuiwen He$(obj)/smb1_err_%.c: $(src)/smberr.h $(src)/gen_smb1_mapping FORCE
59*58ac796bSHuiwen He	$(call if_changed,gen_smb1_mapping)
60*58ac796bSHuiwen He
61415c5b8cSHuiwen He$(obj)/smb1maperror.o: $(addprefix $(obj)/, $(smb1-gen-y))
62415c5b8cSHuiwen He
63415c5b8cSHuiwen Hequiet_cmd_gen_smb1_mapping = GEN     $@
64415c5b8cSHuiwen He      cmd_gen_smb1_mapping = perl $(src)/gen_smb1_mapping $< $@
65415c5b8cSHuiwen Heendif
66415c5b8cSHuiwen He
67c527e13aSDavid Howells#
68c527e13aSDavid Howells# Build the SMB2 error mapping table from smb2status.h
69c527e13aSDavid Howells#
70c527e13aSDavid Howells$(obj)/smb2_mapping_table.c: $(src)/../common/smb2status.h \
7134420cb9SHuiwen He			     $(src)/gen_smb2_mapping FORCE
7234420cb9SHuiwen He	$(call if_changed,gen_smb2_mapping)
73c527e13aSDavid Howells
74c527e13aSDavid Howells$(obj)/smb2maperror.o: $(obj)/smb2_mapping_table.c
75c527e13aSDavid Howells
76c527e13aSDavid Howellsquiet_cmd_gen_smb2_mapping = GEN     $@
77c527e13aSDavid Howells      cmd_gen_smb2_mapping = perl $(src)/gen_smb2_mapping $< $@
78c527e13aSDavid Howells
79e3ac6352SYouling Tangobj-$(CONFIG_SMB1_KUNIT_TESTS) += smb1maperror_test.o
807d0bf050SChenXiaoSongobj-$(CONFIG_SMB_KUNIT_TESTS) += smb2maperror_test.o
817d0bf050SChenXiaoSong
8234420cb9SHuiwen He# Let Kbuild handle tracking and cleaning
83415c5b8cSHuiwen Hetargets += smb2_mapping_table.c $(smb1-gen-y)
84