70835c5b75
Over the years several slightly different approaches were used in the Makefiles to determine the target architecture. This change updates both the build system and Makefile to handle this in a consistent fashion. TARGET_CPU is set to i386, x86_64, powerpc, aarch6 or sparc64 and made available in the Makefiles to be used as appropriate. Reviewed-by: Ryan Moeller <ryan@ixsystems.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #9848
146 lines
4.3 KiB
Makefile
146 lines
4.3 KiB
Makefile
src = @abs_top_srcdir@/module/zfs
|
|
obj = @abs_builddir@
|
|
target_cpu = @target_cpu@
|
|
|
|
MODULE := zfs
|
|
|
|
obj-$(CONFIG_ZFS) := $(MODULE).o
|
|
|
|
ccflags-y := $(ZFS_MODULE_CFLAGS) $(ZFS_MODULE_CPPFLAGS)
|
|
|
|
# Suppress unused but set variable warnings often due to ASSERTs
|
|
ccflags-y += $(NO_UNUSED_BUT_SET_VARIABLE)
|
|
|
|
# Suppress unused-value warnings in sparc64 architecture headers
|
|
ccflags-$(CONFIG_SPARC64) += -Wno-unused-value
|
|
|
|
$(MODULE)-objs += aggsum.o
|
|
$(MODULE)-objs += arc.o
|
|
$(MODULE)-objs += blkptr.o
|
|
$(MODULE)-objs += bplist.o
|
|
$(MODULE)-objs += bpobj.o
|
|
$(MODULE)-objs += bptree.o
|
|
$(MODULE)-objs += btree.o
|
|
$(MODULE)-objs += bqueue.o
|
|
$(MODULE)-objs += cityhash.o
|
|
$(MODULE)-objs += dataset_kstats.o
|
|
$(MODULE)-objs += dbuf.o
|
|
$(MODULE)-objs += dbuf_stats.o
|
|
$(MODULE)-objs += ddt.o
|
|
$(MODULE)-objs += ddt_zap.o
|
|
$(MODULE)-objs += dmu.o
|
|
$(MODULE)-objs += dmu_diff.o
|
|
$(MODULE)-objs += dmu_object.o
|
|
$(MODULE)-objs += dmu_objset.o
|
|
$(MODULE)-objs += dmu_recv.o
|
|
$(MODULE)-objs += dmu_redact.o
|
|
$(MODULE)-objs += dmu_send.o
|
|
$(MODULE)-objs += dmu_traverse.o
|
|
$(MODULE)-objs += dmu_tx.o
|
|
$(MODULE)-objs += dmu_zfetch.o
|
|
$(MODULE)-objs += dnode.o
|
|
$(MODULE)-objs += dnode_sync.o
|
|
$(MODULE)-objs += dsl_bookmark.o
|
|
$(MODULE)-objs += dsl_crypt.o
|
|
$(MODULE)-objs += dsl_dataset.o
|
|
$(MODULE)-objs += dsl_deadlist.o
|
|
$(MODULE)-objs += dsl_deleg.o
|
|
$(MODULE)-objs += dsl_destroy.o
|
|
$(MODULE)-objs += dsl_dir.o
|
|
$(MODULE)-objs += dsl_pool.o
|
|
$(MODULE)-objs += dsl_prop.o
|
|
$(MODULE)-objs += dsl_scan.o
|
|
$(MODULE)-objs += dsl_synctask.o
|
|
$(MODULE)-objs += dsl_userhold.o
|
|
$(MODULE)-objs += edonr_zfs.o
|
|
$(MODULE)-objs += fm.o
|
|
$(MODULE)-objs += gzip.o
|
|
$(MODULE)-objs += hkdf.o
|
|
$(MODULE)-objs += lz4.o
|
|
$(MODULE)-objs += lzjb.o
|
|
$(MODULE)-objs += metaslab.o
|
|
$(MODULE)-objs += mmp.o
|
|
$(MODULE)-objs += multilist.o
|
|
$(MODULE)-objs += objlist.o
|
|
$(MODULE)-objs += pathname.o
|
|
$(MODULE)-objs += range_tree.o
|
|
$(MODULE)-objs += refcount.o
|
|
$(MODULE)-objs += rrwlock.o
|
|
$(MODULE)-objs += sa.o
|
|
$(MODULE)-objs += sha256.o
|
|
$(MODULE)-objs += skein_zfs.o
|
|
$(MODULE)-objs += spa.o
|
|
$(MODULE)-objs += spa_boot.o
|
|
$(MODULE)-objs += spa_checkpoint.o
|
|
$(MODULE)-objs += spa_config.o
|
|
$(MODULE)-objs += spa_errlog.o
|
|
$(MODULE)-objs += spa_history.o
|
|
$(MODULE)-objs += spa_log_spacemap.o
|
|
$(MODULE)-objs += spa_misc.o
|
|
$(MODULE)-objs += space_map.o
|
|
$(MODULE)-objs += space_reftree.o
|
|
$(MODULE)-objs += txg.o
|
|
$(MODULE)-objs += uberblock.o
|
|
$(MODULE)-objs += unique.o
|
|
$(MODULE)-objs += vdev.o
|
|
$(MODULE)-objs += vdev_cache.o
|
|
$(MODULE)-objs += vdev_indirect.o
|
|
$(MODULE)-objs += vdev_indirect_births.o
|
|
$(MODULE)-objs += vdev_indirect_mapping.o
|
|
$(MODULE)-objs += vdev_initialize.o
|
|
$(MODULE)-objs += vdev_label.o
|
|
$(MODULE)-objs += vdev_mirror.o
|
|
$(MODULE)-objs += vdev_missing.o
|
|
$(MODULE)-objs += vdev_queue.o
|
|
$(MODULE)-objs += vdev_raidz.o
|
|
$(MODULE)-objs += vdev_raidz_math.o
|
|
$(MODULE)-objs += vdev_raidz_math_scalar.o
|
|
$(MODULE)-objs += vdev_removal.o
|
|
$(MODULE)-objs += vdev_root.o
|
|
$(MODULE)-objs += vdev_trim.o
|
|
$(MODULE)-objs += zap.o
|
|
$(MODULE)-objs += zap_leaf.o
|
|
$(MODULE)-objs += zap_micro.o
|
|
$(MODULE)-objs += zcp.o
|
|
$(MODULE)-objs += zcp_get.o
|
|
$(MODULE)-objs += zcp_global.o
|
|
$(MODULE)-objs += zcp_iter.o
|
|
$(MODULE)-objs += zcp_synctask.o
|
|
$(MODULE)-objs += zfeature.o
|
|
$(MODULE)-objs += zfs_byteswap.o
|
|
$(MODULE)-objs += zfs_fm.o
|
|
$(MODULE)-objs += zfs_fuid.o
|
|
$(MODULE)-objs += zfs_ioctl.o
|
|
$(MODULE)-objs += zfs_log.o
|
|
$(MODULE)-objs += zfs_onexit.o
|
|
$(MODULE)-objs += zfs_quota.o
|
|
$(MODULE)-objs += zfs_ratelimit.o
|
|
$(MODULE)-objs += zfs_replay.o
|
|
$(MODULE)-objs += zfs_rlock.o
|
|
$(MODULE)-objs += zfs_sa.o
|
|
$(MODULE)-objs += zil.o
|
|
$(MODULE)-objs += zio.o
|
|
$(MODULE)-objs += zio_checksum.o
|
|
$(MODULE)-objs += zio_compress.o
|
|
$(MODULE)-objs += zio_inject.o
|
|
$(MODULE)-objs += zle.o
|
|
$(MODULE)-objs += zrlock.o
|
|
$(MODULE)-objs += zthr.o
|
|
$(MODULE)-objs += zvol.o
|
|
|
|
# Suppress incorrect warnings from versions of objtool which are not
|
|
# aware of x86 EVEX prefix instructions used for AVX512.
|
|
OBJECT_FILES_NON_STANDARD_vdev_raidz_math_avx512bw.o := y
|
|
OBJECT_FILES_NON_STANDARD_vdev_raidz_math_avx512f.o := y
|
|
|
|
$(MODULE)-$(CONFIG_X86) += vdev_raidz_math_sse2.o
|
|
$(MODULE)-$(CONFIG_X86) += vdev_raidz_math_ssse3.o
|
|
$(MODULE)-$(CONFIG_X86) += vdev_raidz_math_avx2.o
|
|
$(MODULE)-$(CONFIG_X86) += vdev_raidz_math_avx512f.o
|
|
$(MODULE)-$(CONFIG_X86) += vdev_raidz_math_avx512bw.o
|
|
|
|
$(MODULE)-$(CONFIG_ARM64) += vdev_raidz_math_aarch64_neon.o
|
|
$(MODULE)-$(CONFIG_ARM64) += vdev_raidz_math_aarch64_neonx2.o
|
|
|
|
-include @abs_top_builddir@/module/os/linux/zfs/Makefile
|