blob: d00e37200e9321b8414cf54b888964321f49bac9 [file] [log] [blame]
Linus Walleijfbbef8b2011-11-17 19:19:51 +01001lib_LTLIBRARIES = libmtp.la
2
3libmtp_la_CFLAGS = @LIBUSB_CFLAGS@
4libmtp_la_SOURCES = libmtp.c unicode.c unicode.h util.c util.h playlist-spl.c \
5 gphoto2-endian.h _stdint.h ptp.c ptp.h libusb-glue.h \
Linus Walleij08550002014-08-24 12:28:17 +02006 music-players.h device-flags.h playlist-spl.h mtpz.h \
7 chdk_live_view.h chdk_ptp.h
Sajid Anwar8dca41d2012-08-18 20:36:13 +02008
9if MTPZ_COMPILE
10libmtp_la_SOURCES += mtpz.c
11endif
Linus Walleijfbbef8b2011-11-17 19:19:51 +010012
13if LIBUSB1_COMPILE
14libmtp_la_SOURCES += libusb1-glue.c
15endif
16
17if LIBUSB0_COMPILE
18libmtp_la_SOURCES += libusb-glue.c
19endif
20
Darran Kartaschew11082d32011-12-13 00:42:01 +010021if LIBOPENUSB_COMPILE
22libmtp_la_SOURCES += libopenusb1-glue.c
23endif
24
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000025include_HEADERS=libmtp.h
Linus Walleijb02a0662006-04-25 08:05:09 +000026EXTRA_DIST=libmtp.h.in libmtp.sym ptp-pack.c
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000027
Linus Walleije8c54642006-03-28 09:45:00 +000028# ---------------------------------------------------------------------------
29# Advanced information about versioning:
30# * "Writing shared libraries" by Mike Hearn
Linus Walleij1aec6fd2011-06-08 09:08:33 +020031# http://plan99.net/~mike/writing-shared-libraries.html
Linus Walleije8c54642006-03-28 09:45:00 +000032# * libtool.info chapter "Versioning"
33# * libtool.info chapter "Updating library version information"
34# ---------------------------------------------------------------------------
35# Versioning:
36# - CURRENT (Major): Increment if the interface has changes. AGE is always
37# *changed* at the same time.
38# - AGE (Micro): Increment if any interfaces have been added; set to 0
Linus Walleij362d13e2009-08-02 19:59:21 +000039# if any interfaces have been removed. Removal has
Linus Walleije8c54642006-03-28 09:45:00 +000040# precedence over adding, so set to 0 if both happened.
41# It denotes upward compatibility.
Linus Walleij362d13e2009-08-02 19:59:21 +000042# - REVISION (Minor): Increment any time the source changes; set to
Linus Walleije8c54642006-03-28 09:45:00 +000043# 0 if you incremented CURRENT.
44#
45# To summarize. Any interface *change* increment CURRENT. If that interface
Linus Walleij362d13e2009-08-02 19:59:21 +000046# change does not break upward compatibility (ie it is an addition),
47# increment AGE, Otherwise AGE is reset to 0. If CURRENT has changed,
Linus Walleije8c54642006-03-28 09:45:00 +000048# REVISION is set to 0, otherwise REVISION is incremented.
49# ---------------------------------------------------------------------------
Marcus Meissnerd8931fe2015-04-11 11:57:06 +020050CURRENT=12
51AGE=3
Linus Walleijbbc43132013-03-15 10:01:52 +010052REVISION=0
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000053SOVERSION=$(CURRENT):$(REVISION):$(AGE)
Linus Walleij6f050022009-05-06 21:14:41 +000054LT_CURRENT_MINUS_AGE=`expr $(CURRENT) - $(AGE)`
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000055
56if COMPILE_MINGW32
Linus Walleij6f050022009-05-06 21:14:41 +000057W32_LIBS=-lws2_32
58W32_LDFLAGS=-export-dynamic
59if MS_LIB_EXE
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000060noinst_DATA=libmtp.lib
Linus Walleij6f050022009-05-06 21:14:41 +000061libmtp.def: $(srcdir)/libmtp.sym
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000062 echo "LIBRARY \"@PACKAGE@\"" > libmtp.def
63 echo "DESCRIPTION \"Media Transfer Protocol (MTP) library\"" >> libmtp.def
64 echo "VERSION @VERSION@" >> libmtp.def
65 echo >> libmtp.def
66 echo "EXPORTS" >> libmtp.def
Linus Walleij6f050022009-05-06 21:14:41 +000067 cat $< >> libmtp.def
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000068libmtp.lib: libmtp.la libmtp.def
69 lib -name:libmtp-$(LT_CURRENT_MINUS_AGE).dll -def:libmtp.def -out:$@
70install-data-local: libmtp.lib libmtp.def
71 $(INSTALL) libmtp.def $(DESTDIR)$(libdir)
72 $(INSTALL) libmtp.lib $(DESTDIR)$(libdir)
73endif
Linus Walleij6f050022009-05-06 21:14:41 +000074endif
Linus Walleij8609af32006-12-28 21:25:17 +000075
Linus Walleij6f050022009-05-06 21:14:41 +000076libmtp_la_LDFLAGS=@LDFLAGS@ -no-undefined -export-symbols $(srcdir)/libmtp.sym -version-info $(SOVERSION) $(W32_LDFLAGS)
Linus Walleijfbbef8b2011-11-17 19:19:51 +010077libmtp_la_LIBADD=$(W32_LIBS) $(LTLIBICONV) @LIBUSB_LIBS@
Linus Walleij6f050022009-05-06 21:14:41 +000078libmtp_la_DEPENDENCIES=$(srcdir)/libmtp.sym
Linus Walleijdd987c32009-01-06 00:35:05 +000079
Marcus Meissneradffb352011-01-31 09:18:55 +010080DISTCLEANFILES = _stdint.h gphoto2-endian.h