summaryrefslogtreecommitdiffstats
path: root/libs/blkid/src/Makefile.am
blob: 78416938604ddcf057cf60cf55c7259e98a73fef (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
include $(top_srcdir)/config/include-Makefile.am

AM_CPPFLAGS += -I$(top_builddir)/blkid/src

# static library
lib_LIBRARIES = libblkid.a
libblkid_a_SOURCES = cache.c dev.c devname.c devno.c getsize.c llseek.c  \
		     probe.c read.c resolve.c save.c tag.c version.c \
		     blkid.h blkidP.h list.h blkid_types.h
libblkid_a_CFLAGS = -fPIC

# shared library (note that we don't use LIBTOOL!)
blkid_IMAGE = libblkid.so
blkid_LDSCRIPT = $(srcdir)/blkid.sym
blkid_LIB = $(blkid_IMAGE).$(BLKID_VERSION)
blkid_SONAME = $(blkid_IMAGE).$(BLKID_VERSION_MAJOR)
blkid_LINKS = $(blkid_IMAGE) $(blkid_SONAME)

if HAVE_DEVMAPPER
blkid_OTHERLDADD = $(DEVMAPPER_LIBS)
endif

EXTRA_DIST = blkid.sym blkid_types.h.in

all-local: $(blkid_LIB)

$(blkid_LIB): $(lib_LIBRARIES) $(blkid_LDSCRIPT)
	$(CC) --shared -o $(blkid_LIB) $(AM_LDFLAGS) \
              -Wl,-soname,$(blkid_SONAME),--version-script,$(blkid_LDSCRIPT) \
	      $(libblkid_a_OBJECTS) $(blkid_OTHERLDADD)
	for I in $(blkid_LINKS); do \
		ln -sf $(blkid_LIB) $$I; \
	done

clean-local:
	rm -f $(blkid_LIB) $(blkid_LINKS)

installdirs-local:
	$(MKDIR_P) $(DESTDIR)$(libdir)

install-exec-hook:
	$(INSTALL_PROGRAM) $(blkid_LIB) $(DESTDIR)$(libdir)
	for I in $(blkid_LINKS); do \
		cd $(DESTDIR)$(libdir) && ln -sf $(blkid_LIB) $$I; \
	done

uninstall-hook:
	rm -f $(DESTDIR)$(libdir)/$(blkid_LIB)
	for I in $(blkid_LINKS); do \
		cd $(DESTDIR)$(libdir) && rm -f $(blkid_LIB) $$I; \
	done