libosmocore/src/core/Makefile.am

167 lines
3.2 KiB
Makefile

# This is _NOT_ the library release version, it's an API version.
# Please read chapter "Library interface versions" of the libtool documentation
# before making any modifications: https://www.gnu.org/software/libtool/manual/html_node/Versioning.html
LIBVERSION=21:0:0
AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_builddir)
AM_CFLAGS = -Wall $(TALLOC_CFLAGS) $(PTHREAD_CFLAGS) $(LIBSCTP_CFLAGS) $(LIBMNL_CFLAGS) $(URING_CFLAGS)
if ENABLE_PSEUDOTALLOC
AM_CPPFLAGS += -I$(top_srcdir)/src/pseudotalloc
endif
lib_LTLIBRARIES = libosmocore.la
libosmocore_la_LIBADD = \
$(BACKTRACE_LIB) \
$(TALLOC_LIBS) \
$(LIBRARY_RT) \
$(PTHREAD_LIBS) \
$(LIBSCTP_LIBS) \
$(URING_LIBS) \
$(NULL)
libosmocore_la_SOURCES = \
application.c \
backtrace.c \
base64.c \
bits.c \
bitvec.c \
bitcomp.c \
context.c \
conv.c \
conv_acc.c \
conv_acc_generic.c \
counter.c \
crc16.c \
crc8gen.c \
crc16gen.c \
crc32gen.c \
crc64gen.c \
exec.c \
fsm.c \
gsmtap_util.c \
isdnhdlc.c \
it_q.c \
logging.c \
logging_syslog.c \
logging_gsmtap.c \
loggingrb.c \
macaddr.c \
msgb.c \
netdev.c \
netns.c \
osmo_io.c \
osmo_io_poll.c \
panic.c \
prbs.c \
prim.c \
rate_ctr.c \
rbtree.c \
select.c \
sercomm.c \
signal.c \
sockaddr_str.c \
socket.c \
soft_uart.c \
stat_item.c \
stats.c \
stats_statsd.c \
stats_tcp.c \
strrb.c \
tdef.c \
thread.c \
time_cc.c \
timer.c \
timer_gettimeofday.c \
timer_clockgettime.c \
tun.c \
use_count.c \
utils.c \
write_queue.c \
probes.d \
$(NULL)
if HAVE_SSSE3
libosmocore_la_SOURCES += conv_acc_sse.c
if HAVE_SSE4_1
conv_acc_sse.lo : AM_CFLAGS += -mssse3 -msse4.1
else
conv_acc_sse.lo : AM_CFLAGS += -mssse3
endif
if HAVE_AVX2
libosmocore_la_SOURCES += conv_acc_sse_avx.c
if HAVE_SSE4_1
conv_acc_sse_avx.lo : AM_CFLAGS += -mssse3 -mavx2 -msse4.1
else
conv_acc_sse_avx.lo : AM_CFLAGS += -mssse3 -mavx2
endif
endif
endif
if HAVE_NEON
libosmocore_la_SOURCES += conv_acc_neon.c
# conv_acc_neon.lo : AM_CFLAGS += -mfpu=neon no, could as well be vfp with neon
endif
BUILT_SOURCES = crc8gen.c crc16gen.c crc32gen.c crc64gen.c
EXTRA_DIST = \
conv_acc_sse_impl.h \
conv_acc_neon_impl.h \
crcXXgen.c.tpl \
osmo_io_internal.h \
stat_item_internal.h \
libosmocore.map \
$(NULL)
EXTRA_libosmocore_la_DEPENDENCIES = libosmocore.map
libosmocore_la_LDFLAGS = \
$(LTLDFLAGS_OSMOCORE) \
-version-info \
$(LIBVERSION) \
-no-undefined
if ENABLE_PLUGIN
libosmocore_la_SOURCES += plugin.c
libosmocore_la_LIBADD += $(LIBRARY_DLOPEN)
endif
if ENABLE_MSGFILE
libosmocore_la_SOURCES += msgfile.c
endif
if ENABLE_SERIAL
libosmocore_la_SOURCES += serial.c
endif
if ENABLE_SYSTEMD_LOGGING
libosmocore_la_SOURCES += logging_systemd.c
libosmocore_la_LIBADD += $(SYSTEMD_LIBS)
endif
if ENABLE_LIBMNL
libosmocore_la_SOURCES += mnl.c
libosmocore_la_LIBADD += $(LIBMNL_LIBS)
endif
if ENABLE_SYSTEMTAP
probes.h: probes.d
$(DTRACE) -C -h -s $< -o $@
probes.lo: probes.d
$(LIBTOOL) --mode=compile $(AM_V_lt) --tag=CC env CFLAGS="$(CFLAGS)" $(DTRACE) -C -G -s $< -o $@
BUILT_SOURCES += probes.h probes.lo
libosmocore_la_LIBADD += probes.lo
endif
if ENABLE_URING
libosmocore_la_SOURCES += osmo_io_uring.c
endif
crc%gen.c: crcXXgen.c.tpl
$(AM_V_GEN)sed -e's/XX/$*/g' $< > $@