Pau Espin Pedrol | d4c3dc8 | 2023-01-18 17:04:04 +0100 | [diff] [blame^] | 1 | # This is _NOT_ the library release version, it's an API version. |
| 2 | # Please read chapter "Library interface versions" of the libtool documentation |
| 3 | # before making any modifications: https://www.gnu.org/software/libtool/manual/html_node/Versioning.html |
| 4 | LIBVERSION=19:0:0 |
| 5 | |
| 6 | AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include |
| 7 | AM_CFLAGS = -Wall $(TALLOC_CFLAGS) $(PTHREAD_CFLAGS) $(LIBSCTP_CFLAGS) $(LIBMNL_CFLAGS) |
| 8 | |
| 9 | if ENABLE_PSEUDOTALLOC |
| 10 | AM_CPPFLAGS += -I$(top_srcdir)/src/pseudotalloc |
| 11 | endif |
| 12 | |
| 13 | lib_LTLIBRARIES = libosmocore.la |
| 14 | |
| 15 | libosmocore_la_LIBADD = $(BACKTRACE_LIB) $(TALLOC_LIBS) $(LIBRARY_RT) $(PTHREAD_LIBS) $(LIBSCTP_LIBS) |
| 16 | libosmocore_la_SOURCES = context.c timer.c timer_gettimeofday.c timer_clockgettime.c \ |
| 17 | select.c signal.c msgb.c bits.c \ |
| 18 | bitvec.c bitcomp.c counter.c fsm.c \ |
| 19 | write_queue.c utils.c socket.c \ |
| 20 | logging.c logging_syslog.c logging_gsmtap.c rate_ctr.c \ |
| 21 | gsmtap_util.c crc16.c panic.c backtrace.c \ |
| 22 | conv.c application.c rbtree.c strrb.c \ |
| 23 | loggingrb.c crc8gen.c crc16gen.c crc32gen.c crc64gen.c \ |
| 24 | macaddr.c stat_item.c stats.c stats_statsd.c prim.c \ |
| 25 | stats_tcp.c \ |
| 26 | conv_acc.c conv_acc_generic.c sercomm.c prbs.c \ |
| 27 | isdnhdlc.c \ |
| 28 | tdef.c \ |
| 29 | thread.c \ |
| 30 | time_cc.c \ |
| 31 | sockaddr_str.c \ |
| 32 | use_count.c \ |
| 33 | exec.c \ |
| 34 | it_q.c \ |
| 35 | probes.d \ |
| 36 | base64.c \ |
| 37 | $(NULL) |
| 38 | |
| 39 | if HAVE_SSSE3 |
| 40 | libosmocore_la_SOURCES += conv_acc_sse.c |
| 41 | if HAVE_SSE4_1 |
| 42 | conv_acc_sse.lo : AM_CFLAGS += -mssse3 -msse4.1 |
| 43 | else |
| 44 | conv_acc_sse.lo : AM_CFLAGS += -mssse3 |
| 45 | endif |
| 46 | |
| 47 | if HAVE_AVX2 |
| 48 | libosmocore_la_SOURCES += conv_acc_sse_avx.c |
| 49 | if HAVE_SSE4_1 |
| 50 | conv_acc_sse_avx.lo : AM_CFLAGS += -mssse3 -mavx2 -msse4.1 |
| 51 | else |
| 52 | conv_acc_sse_avx.lo : AM_CFLAGS += -mssse3 -mavx2 |
| 53 | endif |
| 54 | endif |
| 55 | endif |
| 56 | |
| 57 | if HAVE_NEON |
| 58 | libosmocore_la_SOURCES += conv_acc_neon.c |
| 59 | # conv_acc_neon.lo : AM_CFLAGS += -mfpu=neon no, could as well be vfp with neon |
| 60 | endif |
| 61 | |
| 62 | BUILT_SOURCES = crc8gen.c crc16gen.c crc32gen.c crc64gen.c |
| 63 | |
| 64 | EXTRA_DIST = \ |
| 65 | conv_acc_sse_impl.h \ |
| 66 | conv_acc_neon_impl.h \ |
| 67 | crcXXgen.c.tpl \ |
| 68 | stat_item_internal.h \ |
| 69 | $(NULL) |
| 70 | |
| 71 | libosmocore_la_LDFLAGS = -version-info $(LIBVERSION) -no-undefined |
| 72 | |
| 73 | if ENABLE_PLUGIN |
| 74 | libosmocore_la_SOURCES += plugin.c |
| 75 | libosmocore_la_LIBADD += $(LIBRARY_DLOPEN) |
| 76 | endif |
| 77 | |
| 78 | if ENABLE_MSGFILE |
| 79 | libosmocore_la_SOURCES += msgfile.c |
| 80 | endif |
| 81 | |
| 82 | if ENABLE_SERIAL |
| 83 | libosmocore_la_SOURCES += serial.c |
| 84 | endif |
| 85 | |
| 86 | if ENABLE_SYSTEMD_LOGGING |
| 87 | libosmocore_la_SOURCES += logging_systemd.c |
| 88 | libosmocore_la_LIBADD += $(SYSTEMD_LIBS) |
| 89 | endif |
| 90 | |
| 91 | if ENABLE_LIBMNL |
| 92 | libosmocore_la_SOURCES += mnl.c |
| 93 | libosmocore_la_LIBADD += $(LIBMNL_LIBS) |
| 94 | endif |
| 95 | |
| 96 | if ENABLE_SYSTEMTAP |
| 97 | probes.h: probes.d |
| 98 | $(DTRACE) -C -h -s $< -o $@ |
| 99 | |
| 100 | probes.lo: probes.d |
| 101 | $(LIBTOOL) --mode=compile $(AM_V_lt) --tag=CC env CFLAGS="$(CFLAGS)" $(DTRACE) -C -G -s $< -o $@ |
| 102 | |
| 103 | BUILT_SOURCES += probes.h probes.lo |
| 104 | libosmocore_la_LIBADD += probes.lo |
| 105 | endif |
| 106 | |
| 107 | crc%gen.c: crcXXgen.c.tpl |
| 108 | $(AM_V_GEN)sed -e's/XX/$*/g' $< > $@ |