2019-09-25 21:48:00 +02:00
|
|
|
AUTOMAKE_OPTIONS = foreign
|
|
|
|
|
2020-11-28 21:24:23 +01:00
|
|
|
BUILT_SOURCES =#
|
|
|
|
CLEANFILES =#
|
|
|
|
|
2022-06-25 02:05:44 +02:00
|
|
|
DEFS += -DIRCD_UNIT
|
|
|
|
DEFS += -DIRCD_MATRIX_UNIT
|
2019-09-25 21:48:00 +02:00
|
|
|
|
2022-06-25 02:05:44 +02:00
|
|
|
AM_CPPFLAGS =#
|
|
|
|
AM_CPPFLAGS += -I$(top_srcdir)/include
|
2019-09-25 21:48:00 +02:00
|
|
|
|
2022-06-25 02:05:44 +02:00
|
|
|
AM_CXXFLAGS =#
|
2020-09-13 23:30:04 +02:00
|
|
|
|
2022-06-25 02:05:44 +02:00
|
|
|
AM_LDFLAGS =#
|
|
|
|
AM_LDFLAGS += -version-info 0:1:0
|
|
|
|
AM_LDFLAGS += -Wl,--sort-section=name
|
|
|
|
AM_LDFLAGS += -Wl,--no-undefined-version
|
|
|
|
AM_LDFLAGS += -Wl,--allow-shlib-undefined
|
|
|
|
AM_LDFLAGS += -Wl,--unresolved-symbols=ignore-in-shared-libs
|
2022-07-28 00:43:22 +02:00
|
|
|
AM_LDFLAGS += -Wl,-Bsymbolic
|
2022-06-25 02:05:44 +02:00
|
|
|
AM_LDFLAGS += -Wl,-z,lazy
|
|
|
|
AM_LDFLAGS += -L$(top_srcdir)/ircd
|
|
|
|
AM_LDFLAGS += $(PLATFORM_LDFLAGS)
|
2019-09-25 21:48:00 +02:00
|
|
|
|
2022-07-19 21:38:10 +02:00
|
|
|
if CLANG_PCH
|
|
|
|
AM_CPPFLAGS += -include-pch $(top_srcdir)/include/ircd/matrix.pic.h.gch
|
|
|
|
AM_CPPFLAGS += -include ircd/mods/mapi.h
|
|
|
|
else
|
|
|
|
AM_CPPFLAGS += -include ircd/matrix.pic.h
|
|
|
|
AM_CPPFLAGS += -include ircd/mods/mapi.h
|
|
|
|
endif
|
|
|
|
|
2020-04-18 06:19:28 +02:00
|
|
|
if GCC
|
|
|
|
AM_CXXFLAGS += -ftls-model=local-dynamic
|
|
|
|
endif
|
|
|
|
|
2020-04-18 06:21:28 +02:00
|
|
|
if LTO
|
2022-07-20 19:44:54 +02:00
|
|
|
if GCC
|
|
|
|
AM_CXXFLAGS += -flto=auto
|
|
|
|
endif
|
2020-04-18 06:21:28 +02:00
|
|
|
endif
|
|
|
|
|
2020-05-11 10:58:25 +02:00
|
|
|
if LTO
|
|
|
|
if CLANG
|
2022-07-20 19:44:54 +02:00
|
|
|
AM_CXXFLAGS += -flto=thin
|
2020-05-11 10:58:25 +02:00
|
|
|
AM_CXXFLAGS += -fstrict-vtable-pointers
|
|
|
|
AM_CXXFLAGS += -fwhole-program-vtables
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2020-11-28 21:24:23 +01:00
|
|
|
if CLANG
|
2022-07-27 20:28:14 +02:00
|
|
|
if PROFILE_USE
|
2020-11-28 21:24:23 +01:00
|
|
|
AM_CXXFLAGS += -fprofile-use
|
|
|
|
BUILT_SOURCES += default.profdata
|
|
|
|
CLEANFILES += default.profdata
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2022-06-25 02:05:44 +02:00
|
|
|
if GOLD
|
2022-06-30 04:07:43 +02:00
|
|
|
AM_LDFLAGS += -Wl,--no-gnu-unique
|
2022-06-25 02:05:44 +02:00
|
|
|
AM_LDFLAGS += -Wl,--no-text-reorder
|
|
|
|
AM_LDFLAGS += -Wl,--sort-common=descending
|
|
|
|
endif
|
|
|
|
|
2019-09-25 21:48:00 +02:00
|
|
|
if MINGW
|
2020-11-28 21:24:23 +01:00
|
|
|
AM_LDFLAGS += -Wl,--enable-runtime-pseudo-reloc
|
2019-09-25 21:48:00 +02:00
|
|
|
endif
|
|
|
|
|
2022-06-25 02:05:44 +02:00
|
|
|
AM_CXXFLAGS += $(EXTRA_CXXFLAGS)
|
|
|
|
AM_CPPFLAGS += $(EXTRA_CPPFLAGS)
|
|
|
|
AM_LDFLAGS += $(EXTRA_LDFLAGS)
|
|
|
|
|
2019-09-25 21:48:00 +02:00
|
|
|
libircd_matrixdir = @libdir@
|
2022-07-09 23:53:52 +02:00
|
|
|
libircd_matrix_LTLIBRARIES =#
|
|
|
|
libircd_matrix_LTLIBRARIES += libircd_matrix.la
|
2019-09-26 05:30:26 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
# Unit list
|
|
|
|
#
|
2019-09-25 21:48:00 +02:00
|
|
|
|
|
|
|
libircd_matrix_la_SOURCES =#
|
2020-11-28 21:24:23 +01:00
|
|
|
libircd_matrix_la_SOURCES += default.profdata
|
2019-09-25 21:48:00 +02:00
|
|
|
libircd_matrix_la_SOURCES += name.cc
|
|
|
|
libircd_matrix_la_SOURCES += id.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs.cc
|
2020-03-25 19:06:29 +01:00
|
|
|
libircd_matrix_la_SOURCES += dbs_event_idx.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_json.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_column.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_refs.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_horizon.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_sender.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_type.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_event_state.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_room_events.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_room_type.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_room_state.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_room_state_space.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_room_joined.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_room_head.cc
|
|
|
|
libircd_matrix_la_SOURCES += dbs_desc.cc
|
2022-08-06 09:55:55 +02:00
|
|
|
libircd_matrix_la_SOURCES += dbs_init.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += hook.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += event.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += event_cached.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_conforms.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_fetch.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_get.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_id.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_index.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_prefetch.cc
|
2020-12-17 00:55:12 +01:00
|
|
|
libircd_matrix_la_SOURCES += event_auth.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += event_prev.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_refs.cc
|
2019-09-25 21:48:00 +02:00
|
|
|
libircd_matrix_la_SOURCES += room.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_auth.cc
|
2019-09-27 04:00:19 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_aliases.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_bootstrap.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_create.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_events.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_head.cc
|
2020-11-06 02:58:17 +01:00
|
|
|
libircd_matrix_la_SOURCES += room_head_fetch.cc
|
2020-11-21 00:01:51 +01:00
|
|
|
libircd_matrix_la_SOURCES += room_state_fetch.cc
|
2019-09-27 04:00:19 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_join.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_leave.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_visible.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_members.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_origins.cc
|
2020-03-24 20:50:28 +01:00
|
|
|
libircd_matrix_la_SOURCES += room_type.cc
|
2020-10-27 08:10:48 +01:00
|
|
|
libircd_matrix_la_SOURCES += room_content.cc
|
2022-08-03 00:59:23 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_message.cc
|
2019-09-27 04:00:19 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_power.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_state.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_state_history.cc
|
|
|
|
libircd_matrix_la_SOURCES += room_state_space.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_server_acl.cc
|
2019-09-27 04:00:19 +02:00
|
|
|
libircd_matrix_la_SOURCES += room_stats.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += user.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_account_data.cc
|
2020-04-02 03:30:02 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_devices.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_events.cc
|
|
|
|
libircd_matrix_la_SOURCES += user_filter.cc
|
2020-04-02 02:14:51 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_ignores.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_mitsein.cc
|
2020-03-23 21:46:26 +01:00
|
|
|
libircd_matrix_la_SOURCES += user_notifications.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_profile.cc
|
2020-03-21 19:14:21 +01:00
|
|
|
libircd_matrix_la_SOURCES += user_pushers.cc
|
2020-03-18 05:57:44 +01:00
|
|
|
libircd_matrix_la_SOURCES += user_pushrules.cc
|
2019-09-27 03:36:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_register.cc
|
|
|
|
libircd_matrix_la_SOURCES += user_room_account_data.cc
|
|
|
|
libircd_matrix_la_SOURCES += user_room_tags.cc
|
2020-04-02 03:30:02 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_rooms.cc
|
2020-04-02 02:14:51 +02:00
|
|
|
libircd_matrix_la_SOURCES += user_tokens.cc
|
2020-04-24 21:05:39 +02:00
|
|
|
libircd_matrix_la_SOURCES += acquire.cc
|
2020-10-21 04:07:46 +02:00
|
|
|
libircd_matrix_la_SOURCES += app.cc
|
2020-04-10 02:24:50 +02:00
|
|
|
libircd_matrix_la_SOURCES += bridge.cc
|
2020-08-23 04:22:41 +02:00
|
|
|
libircd_matrix_la_SOURCES += breadcrumbs.cc
|
2020-04-23 12:50:03 +02:00
|
|
|
libircd_matrix_la_SOURCES += burst.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += display_name.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_append.cc
|
|
|
|
libircd_matrix_la_SOURCES += event_horizon.cc
|
|
|
|
libircd_matrix_la_SOURCES += events.cc
|
2019-09-25 21:48:00 +02:00
|
|
|
libircd_matrix_la_SOURCES += fed.cc
|
2020-06-08 20:19:29 +02:00
|
|
|
libircd_matrix_la_SOURCES += fed_well_known.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += feds.cc
|
|
|
|
libircd_matrix_la_SOURCES += fetch.cc
|
2022-08-09 20:47:59 +02:00
|
|
|
libircd_matrix_la_SOURCES += fetch_check.cc
|
2020-04-23 11:04:07 +02:00
|
|
|
libircd_matrix_la_SOURCES += gossip.cc
|
2020-07-30 16:19:16 +02:00
|
|
|
libircd_matrix_la_SOURCES += groups.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += request.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += keys.cc
|
2020-08-21 03:56:14 +02:00
|
|
|
libircd_matrix_la_SOURCES += media.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += node.cc
|
|
|
|
libircd_matrix_la_SOURCES += presence.cc
|
|
|
|
libircd_matrix_la_SOURCES += pretty.cc
|
|
|
|
libircd_matrix_la_SOURCES += receipt.cc
|
|
|
|
libircd_matrix_la_SOURCES += rooms.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += membership.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += rooms_summary.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += sync.cc
|
2019-09-26 21:16:22 +02:00
|
|
|
libircd_matrix_la_SOURCES += typing.cc
|
|
|
|
libircd_matrix_la_SOURCES += users.cc
|
|
|
|
libircd_matrix_la_SOURCES += users_servers.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += error.cc
|
2020-03-18 19:55:35 +01:00
|
|
|
libircd_matrix_la_SOURCES += push.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += filter.cc
|
|
|
|
libircd_matrix_la_SOURCES += txn.cc
|
|
|
|
libircd_matrix_la_SOURCES += vm.cc
|
2019-10-03 19:51:29 +02:00
|
|
|
libircd_matrix_la_SOURCES += vm_eval.cc
|
|
|
|
libircd_matrix_la_SOURCES += vm_inject.cc
|
|
|
|
libircd_matrix_la_SOURCES += vm_execute.cc
|
2020-09-16 03:56:31 +02:00
|
|
|
libircd_matrix_la_SOURCES += vm_fetch.cc
|
2022-08-09 21:04:29 +02:00
|
|
|
libircd_matrix_la_SOURCES += vm_conforms.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += init_backfill.cc
|
2019-10-01 05:50:58 +02:00
|
|
|
libircd_matrix_la_SOURCES += homeserver.cc
|
2020-08-24 13:06:16 +02:00
|
|
|
libircd_matrix_la_SOURCES += homeserver_bootstrap.cc
|
2019-09-28 23:17:54 +02:00
|
|
|
libircd_matrix_la_SOURCES += resource.cc
|
2019-09-27 04:28:25 +02:00
|
|
|
libircd_matrix_la_SOURCES += matrix.cc
|
2019-09-25 21:48:00 +02:00
|
|
|
|
2019-09-26 05:30:26 +02:00
|
|
|
#
|
|
|
|
# Unit configurations
|
|
|
|
#
|
2019-09-25 21:48:00 +02:00
|
|
|
|
2022-07-19 21:38:10 +02:00
|
|
|
if CLANG_PCH
|
|
|
|
SPIRIT_UNIT_CPPFLAGS += -include ircd/spirit.h
|
|
|
|
#SPIRIT_UNIT_CPPFLAGS += -include-pch $(top_srcdir)/include/ircd/spirit.h.gch
|
|
|
|
else
|
|
|
|
SPIRIT_UNIT_CPPFLAGS += -include ircd/spirit.h
|
|
|
|
endif
|
|
|
|
|
|
|
|
id.lo: AM_CPPFLAGS := ${AM_CPPFLAGS} ${SPIRIT_UNIT_CPPFLAGS}
|
|
|
|
id.lo: CXXFLAGS += ${AM_CXXFLAGS} ${SPIRIT_UNIT_CXXFLAGS}
|
2020-11-28 21:24:23 +01:00
|
|
|
|
|
|
|
#
|
|
|
|
# Other recipes
|
|
|
|
#
|
|
|
|
|
|
|
|
# LLVM PGO text to binary for -fprofile-use
|
2022-07-27 20:28:14 +02:00
|
|
|
if CLANG
|
2020-11-28 21:24:23 +01:00
|
|
|
default.profdata:
|
|
|
|
-$(LLVM_PROFDATA) merge -output=default.profdata default.proftext
|
2022-07-27 20:28:14 +02:00
|
|
|
endif
|