1libzpool_la_CFLAGS  = $(AM_CFLAGS) $(KERNEL_CFLAGS) $(LIBRARY_CFLAGS)
2libzpool_la_CFLAGS += $(ZLIB_CFLAGS)
3
4libzpool_la_CPPFLAGS  = $(AM_CPPFLAGS) $(FORCEDEBUG_CPPFLAGS)
5libzpool_la_CPPFLAGS += -I$(srcdir)/include/os/@ac_system_l@/zfs
6libzpool_la_CPPFLAGS += -DLIB_ZPOOL_BUILD
7
8lib_LTLIBRARIES += libzpool.la
9CPPCHECKTARGETS += libzpool.la
10
11dist_libzpool_la_SOURCES = \
12	%D%/kernel.c \
13	%D%/taskq.c \
14	%D%/util.c
15
16nodist_libzpool_la_SOURCES = \
17	module/lua/lapi.c \
18	module/lua/lauxlib.c \
19	module/lua/lbaselib.c \
20	module/lua/lcode.c \
21	module/lua/lcompat.c \
22	module/lua/lcorolib.c \
23	module/lua/lctype.c \
24	module/lua/ldebug.c \
25	module/lua/ldo.c \
26	module/lua/lfunc.c \
27	module/lua/lgc.c \
28	module/lua/llex.c \
29	module/lua/lmem.c \
30	module/lua/lobject.c \
31	module/lua/lopcodes.c \
32	module/lua/lparser.c \
33	module/lua/lstate.c \
34	module/lua/lstring.c \
35	module/lua/lstrlib.c \
36	module/lua/ltable.c \
37	module/lua/ltablib.c \
38	module/lua/ltm.c \
39	module/lua/lvm.c \
40	module/lua/lzio.c \
41	\
42	module/os/linux/zfs/abd_os.c \
43	module/os/linux/zfs/arc_os.c \
44	module/os/linux/zfs/trace.c \
45	module/os/linux/zfs/vdev_file.c \
46	module/os/linux/zfs/zfs_debug.c \
47	module/os/linux/zfs/zfs_racct.c \
48	module/os/linux/zfs/zfs_znode.c \
49	module/os/linux/zfs/zio_crypt.c \
50	\
51	module/zcommon/cityhash.c \
52	module/zcommon/zfeature_common.c \
53	module/zcommon/zfs_comutil.c \
54	module/zcommon/zfs_deleg.c \
55	module/zcommon/zfs_fletcher.c \
56	module/zcommon/zfs_fletcher_aarch64_neon.c \
57	module/zcommon/zfs_fletcher_avx512.c \
58	module/zcommon/zfs_fletcher_intel.c \
59	module/zcommon/zfs_fletcher_sse.c \
60	module/zcommon/zfs_fletcher_superscalar.c \
61	module/zcommon/zfs_fletcher_superscalar4.c \
62	module/zcommon/zfs_namecheck.c \
63	module/zcommon/zfs_prop.c \
64	module/zcommon/zpool_prop.c \
65	module/zcommon/zprop_common.c \
66	\
67	module/zfs/abd.c \
68	module/zfs/aggsum.c \
69	module/zfs/arc.c \
70	module/zfs/blake3_zfs.c \
71	module/zfs/blkptr.c \
72	module/zfs/bplist.c \
73	module/zfs/bpobj.c \
74	module/zfs/bptree.c \
75	module/zfs/bqueue.c \
76	module/zfs/btree.c \
77	module/zfs/brt.c \
78	module/zfs/dbuf.c \
79	module/zfs/dbuf_stats.c \
80	module/zfs/ddt.c \
81	module/zfs/ddt_zap.c \
82	module/zfs/dmu.c \
83	module/zfs/dmu_diff.c \
84	module/zfs/dmu_object.c \
85	module/zfs/dmu_objset.c \
86	module/zfs/dmu_recv.c \
87	module/zfs/dmu_redact.c \
88	module/zfs/dmu_send.c \
89	module/zfs/dmu_traverse.c \
90	module/zfs/dmu_tx.c \
91	module/zfs/dmu_zfetch.c \
92	module/zfs/dnode.c \
93	module/zfs/dnode_sync.c \
94	module/zfs/dsl_bookmark.c \
95	module/zfs/dsl_crypt.c \
96	module/zfs/dsl_dataset.c \
97	module/zfs/dsl_deadlist.c \
98	module/zfs/dsl_deleg.c \
99	module/zfs/dsl_destroy.c \
100	module/zfs/dsl_dir.c \
101	module/zfs/dsl_pool.c \
102	module/zfs/dsl_prop.c \
103	module/zfs/dsl_scan.c \
104	module/zfs/dsl_synctask.c \
105	module/zfs/dsl_userhold.c \
106	module/zfs/edonr_zfs.c \
107	module/zfs/fm.c \
108	module/zfs/gzip.c \
109	module/zfs/hkdf.c \
110	module/zfs/lz4.c \
111	module/zfs/lz4_zfs.c \
112	module/zfs/lzjb.c \
113	module/zfs/metaslab.c \
114	module/zfs/mmp.c \
115	module/zfs/multilist.c \
116	module/zfs/objlist.c \
117	module/zfs/pathname.c \
118	module/zfs/range_tree.c \
119	module/zfs/refcount.c \
120	module/zfs/rrwlock.c \
121	module/zfs/sa.c \
122	module/zfs/sha2_zfs.c \
123	module/zfs/skein_zfs.c \
124	module/zfs/spa.c \
125	module/zfs/spa_checkpoint.c \
126	module/zfs/spa_config.c \
127	module/zfs/spa_errlog.c \
128	module/zfs/spa_history.c \
129	module/zfs/spa_log_spacemap.c \
130	module/zfs/spa_misc.c \
131	module/zfs/spa_stats.c \
132	module/zfs/space_map.c \
133	module/zfs/space_reftree.c \
134	module/zfs/txg.c \
135	module/zfs/uberblock.c \
136	module/zfs/unique.c \
137	module/zfs/vdev.c \
138	module/zfs/vdev_cache.c \
139	module/zfs/vdev_draid.c \
140	module/zfs/vdev_draid_rand.c \
141	module/zfs/vdev_indirect.c \
142	module/zfs/vdev_indirect_births.c \
143	module/zfs/vdev_indirect_mapping.c \
144	module/zfs/vdev_initialize.c \
145	module/zfs/vdev_label.c \
146	module/zfs/vdev_mirror.c \
147	module/zfs/vdev_missing.c \
148	module/zfs/vdev_queue.c \
149	module/zfs/vdev_raidz.c \
150	module/zfs/vdev_raidz_math.c \
151	module/zfs/vdev_raidz_math_aarch64_neon.c \
152	module/zfs/vdev_raidz_math_aarch64_neonx2.c \
153	module/zfs/vdev_raidz_math_avx2.c \
154	module/zfs/vdev_raidz_math_avx512bw.c \
155	module/zfs/vdev_raidz_math_avx512f.c \
156	module/zfs/vdev_raidz_math_powerpc_altivec.c \
157	module/zfs/vdev_raidz_math_scalar.c \
158	module/zfs/vdev_raidz_math_sse2.c \
159	module/zfs/vdev_raidz_math_ssse3.c \
160	module/zfs/vdev_rebuild.c \
161	module/zfs/vdev_removal.c \
162	module/zfs/vdev_root.c \
163	module/zfs/vdev_trim.c \
164	module/zfs/zap.c \
165	module/zfs/zap_leaf.c \
166	module/zfs/zap_micro.c \
167	module/zfs/zcp.c \
168	module/zfs/zcp_get.c \
169	module/zfs/zcp_global.c \
170	module/zfs/zcp_iter.c \
171	module/zfs/zcp_set.c \
172	module/zfs/zcp_synctask.c \
173	module/zfs/zfeature.c \
174	module/zfs/zfs_byteswap.c \
175	module/zfs/zfs_chksum.c \
176	module/zfs/zfs_fm.c \
177	module/zfs/zfs_fuid.c \
178	module/zfs/zfs_ratelimit.c \
179	module/zfs/zfs_rlock.c \
180	module/zfs/zfs_sa.c \
181	module/zfs/zil.c \
182	module/zfs/zio.c \
183	module/zfs/zio_checksum.c \
184	module/zfs/zio_compress.c \
185	module/zfs/zio_inject.c \
186	module/zfs/zle.c \
187	module/zfs/zrlock.c \
188	module/zfs/zthr.c
189
190libzpool_la_LIBADD = \
191	libicp.la \
192	libunicode.la \
193	libnvpair.la \
194	libzstd.la \
195	libzutil.la
196
197libzpool_la_LIBADD += $(LIBCLOCK_GETTIME) $(ZLIB_LIBS) -ldl -lm
198
199libzpool_la_LDFLAGS = -pthread
200
201if !ASAN_ENABLED
202libzpool_la_LDFLAGS += -Wl,-z,defs
203endif
204
205if BUILD_FREEBSD
206libzpool_la_LIBADD += -lgeom
207endif
208
209libzpool_la_LDFLAGS += -version-info 5:0:0
210
211if TARGET_CPU_POWERPC
212module/zfs/libzpool_la-vdev_raidz_math_powerpc_altivec.$(OBJEXT) : CFLAGS += -maltivec
213module/zfs/libzpool_la-vdev_raidz_math_powerpc_altivec.l$(OBJEXT): CFLAGS += -maltivec
214endif
215