blob: abb725f9e5a2ccf57be8bacf607866f00f9e2004 [file] [log] [blame]
Linus Walleijeb8c6fe2006-02-03 09:46:22 +00001lib_LTLIBRARIES=libmtp.la
Linus Walleijf3c44052008-08-16 21:14:56 +00002libmtp_la_SOURCES=libmtp.c unicode.c unicode.h util.c util.h playlist-spl.c \
Linus Walleijb02a0662006-04-25 08:05:09 +00003 libusb-glue.c libusb-glue.h \
Marcus Meissneradffb352011-01-31 09:18:55 +01004 gphoto2-endian.h _stdint.h ptp.c ptp.h \
Linus Walleijf3c44052008-08-16 21:14:56 +00005 music-players.h device-flags.h playlist-spl.h
Linus Walleijeb8c6fe2006-02-03 09:46:22 +00006include_HEADERS=libmtp.h
Linus Walleijb02a0662006-04-25 08:05:09 +00007EXTRA_DIST=libmtp.h.in libmtp.sym ptp-pack.c
Linus Walleijeb8c6fe2006-02-03 09:46:22 +00008
Linus Walleije8c54642006-03-28 09:45:00 +00009# ---------------------------------------------------------------------------
10# Advanced information about versioning:
11# * "Writing shared libraries" by Mike Hearn
12# http://navi.cx/~mike/writing-shared-libraries.html
13# * libtool.info chapter "Versioning"
14# * libtool.info chapter "Updating library version information"
15# ---------------------------------------------------------------------------
16# Versioning:
17# - CURRENT (Major): Increment if the interface has changes. AGE is always
18# *changed* at the same time.
19# - AGE (Micro): Increment if any interfaces have been added; set to 0
Linus Walleij362d13e2009-08-02 19:59:21 +000020# if any interfaces have been removed. Removal has
Linus Walleije8c54642006-03-28 09:45:00 +000021# precedence over adding, so set to 0 if both happened.
22# It denotes upward compatibility.
Linus Walleij362d13e2009-08-02 19:59:21 +000023# - REVISION (Minor): Increment any time the source changes; set to
Linus Walleije8c54642006-03-28 09:45:00 +000024# 0 if you incremented CURRENT.
25#
26# To summarize. Any interface *change* increment CURRENT. If that interface
Linus Walleij362d13e2009-08-02 19:59:21 +000027# change does not break upward compatibility (ie it is an addition),
28# increment AGE, Otherwise AGE is reset to 0. If CURRENT has changed,
Linus Walleije8c54642006-03-28 09:45:00 +000029# REVISION is set to 0, otherwise REVISION is incremented.
30# ---------------------------------------------------------------------------
Linus Walleij362d13e2009-08-02 19:59:21 +000031CURRENT=11
32AGE=3
Linus Walleij677e6652011-01-08 23:11:59 +000033REVISION=4
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000034SOVERSION=$(CURRENT):$(REVISION):$(AGE)
Linus Walleij6f050022009-05-06 21:14:41 +000035LT_CURRENT_MINUS_AGE=`expr $(CURRENT) - $(AGE)`
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000036
37if COMPILE_MINGW32
Linus Walleij6f050022009-05-06 21:14:41 +000038W32_LIBS=-lws2_32
39W32_LDFLAGS=-export-dynamic
40if MS_LIB_EXE
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000041noinst_DATA=libmtp.lib
Linus Walleij6f050022009-05-06 21:14:41 +000042libmtp.def: $(srcdir)/libmtp.sym
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000043 echo "LIBRARY \"@PACKAGE@\"" > libmtp.def
44 echo "DESCRIPTION \"Media Transfer Protocol (MTP) library\"" >> libmtp.def
45 echo "VERSION @VERSION@" >> libmtp.def
46 echo >> libmtp.def
47 echo "EXPORTS" >> libmtp.def
Linus Walleij6f050022009-05-06 21:14:41 +000048 cat $< >> libmtp.def
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000049libmtp.lib: libmtp.la libmtp.def
50 lib -name:libmtp-$(LT_CURRENT_MINUS_AGE).dll -def:libmtp.def -out:$@
51install-data-local: libmtp.lib libmtp.def
52 $(INSTALL) libmtp.def $(DESTDIR)$(libdir)
53 $(INSTALL) libmtp.lib $(DESTDIR)$(libdir)
54endif
Linus Walleij6f050022009-05-06 21:14:41 +000055endif
Linus Walleij8609af32006-12-28 21:25:17 +000056
Linus Walleij6f050022009-05-06 21:14:41 +000057libmtp_la_LDFLAGS=@LDFLAGS@ -no-undefined -export-symbols $(srcdir)/libmtp.sym -version-info $(SOVERSION) $(W32_LDFLAGS)
58libmtp_la_LIBADD=$(W32_LIBS) $(LTLIBICONV)
59libmtp_la_DEPENDENCIES=$(srcdir)/libmtp.sym
Linus Walleijdd987c32009-01-06 00:35:05 +000060
Marcus Meissneradffb352011-01-31 09:18:55 +010061DISTCLEANFILES = _stdint.h gphoto2-endian.h