33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
-
+
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
+
|
BINS =
# The following two lines need to be kept syncronised.
OBJS = libconfig.o conf_space.o conf_section.o conf_apache.o conf_colon.o conf_equal.o conf_xml.o @LIBOBJS@
SHOBJS = libconfig_shr.o conf_space_shr.o conf_section_shr.o conf_apache_shr.o conf_colon_shr.o conf_equal_shr.o conf_xml_shr.o @SHLIBOBJS@
all: $(LIBS) $(BINS)
libconfig.$(SHOBJEXT): $(SHOBJS) libconfig.vers libconfig.syms
libconfig.$(SHOBJEXT): $(SHOBJS) $(srcdir)/libconfig.vers libconfig.syms
$(CC) $(CPPFLAGS) $(CFLAGS) $(SHOBJFLAGS) $(SHOBJLDFLAGS) -o $@ $(SHOBJS) $(LDFLAGS)
-@WEAKENSYMS@ libconfig.$(SHOBJEXT)
-@REMOVESYMS@ libconfig.$(SHOBJEXT)
libconfig.$(AREXT): $(OBJS)
$(AR) rcu $@ $(OBJS)
-$(RANLIB) $@
libconfig.o: $(srcdir)/libconfig.c $(srcdir)/compat.h $(srcdir)/win32.h $(srcdir)/config.h libconfig.h
libconfig_shr.o: $(srcdir)/libconfig.c $(srcdir)/compat.h $(srcdir)/win32.h $(srcdir)/config.h libconfig.h
libconfig.o: $(srcdir)/libconfig.c $(srcdir)/compat.h $(srcdir)/win32.h $(srcdir)/config.h $(srcdir)/libconfig.h
libconfig_shr.o: $(srcdir)/libconfig.c $(srcdir)/compat.h $(srcdir)/win32.h $(srcdir)/config.h $(srcdir)/libconfig.h
%_shr.o: $(srcdir)/%.c
$(CC) $(CPPFLAGS) $(CFLAGS) $(SHOBJFLAGS) -c -o $@ "$(filter %.c, $^)"
%.o: $(srcdir)/%.c
$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ "$(filter %.c, $^)"
libconfig.vers: libconfig.syms.in
rm -f libconfig.vers
$(srcdir)/libconfig.vers: $(srcdir)/libconfig.syms.in
rm -f $(srcdir)/libconfig.vers
echo 'LIBCONFIG_0.3.0 {' > '$@'
echo ' global:' >> '$@'
cat libconfig.syms.in | sed 's/^@SYMPREFIX@//;s/^/ /;s/$$/;/' >> '$@'
cat '$(srcdir)/libconfig.syms.in' | sed 's/^@''SYMPREFIX@//;s/^/ /;s/$$/;/' >> '$@'
echo ' local:' >> '$@'
echo ' *;' >> '$@'
echo '};' >> '$@'
test-lc$(EXEEXT): $(LIBS) $(srcdir)/test-lc.c
$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $(filter %.c, $^) $(LDFLAGS) -Wl,-R -Wl,. -L. -lconfig
$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $(filter %.c, $^) $(LDFLAGS) -Wl,-R -Wl,$(srcdir) -L$(srcdir) -lconfig
install: all libconfig.h
install: all $(srcdir)/libconfig.h
-$(INSTALL) -d "$(DESTDIR)$(mandir)"
-$(INSTALL) -d "$(DESTDIR)$(mandir)/man3"
-$(INSTALL) -d "$(DESTDIR)$(libdir)"
-$(INSTALL) -d "$(DESTDIR)$(includedir)"
-$(INSTALL) -m 644 libconfig.$(SHOBJEXT).def "$(DESTDIR)$(libdir)/libconfig.def"
-$(INSTALL) -m 644 libconfig.$(SHOBJEXT).a "$(DESTDIR)$(libdir)/libconfig.lib"
$(INSTALL) -m 755 libconfig.$(SHOBJEXT) "$(DESTDIR)$(libdir)/libconfig.$(SHOBJEXT).$(PKGVERS)"
$(INSTALL) -m 644 libconfig.$(AREXT) "$(DESTDIR)$(libdir)/libconfig.$(AREXT)"
$(INSTALL) -m 644 lc_register_callback.3 "$(DESTDIR)$(mandir)/man3/lc_register_callback.3"
$(INSTALL) -m 644 lc_register_var.3 "$(DESTDIR)$(mandir)/man3/lc_register_var.3"
$(INSTALL) -m 644 lc_process_file.3 "$(DESTDIR)$(mandir)/man3/lc_process_file.3"
$(INSTALL) -m 644 lc_handle_type.3 "$(DESTDIR)$(mandir)/man3/lc_handle_type.3"
$(INSTALL) -m 644 lc_geterrstr.3 "$(DESTDIR)$(mandir)/man3/lc_geterrstr.3"
$(INSTALL) -m 644 lc_seterrstr.3 "$(DESTDIR)$(mandir)/man3/lc_seterrstr.3"
$(INSTALL) -m 644 lc_geterrno.3 "$(DESTDIR)$(mandir)/man3/lc_geterrno.3"
$(INSTALL) -m 644 lc_process.3 "$(DESTDIR)$(mandir)/man3/lc_process.3"
$(INSTALL) -m 644 lc_cleanup.3 "$(DESTDIR)$(mandir)/man3/lc_cleanup.3"
$(INSTALL) -m 644 libconfig.3 "$(DESTDIR)$(mandir)/man3/libconfig.3"
$(INSTALL) -m 644 libconfig.h "$(DESTDIR)$(includedir)/libconfig.h"
$(INSTALL) -m 644 $(srcdir)/libconfig.h "$(DESTDIR)$(includedir)/libconfig.h"
-( cd "$(DESTDIR)$(libdir)" && rm -f libconfig.$(SHOBJEXT).$(PKGVERSMAJOR) && $(LN_S) libconfig.$(SHOBJEXT).$(PKGVERS) libconfig.$(SHOBJEXT).$(PKGVERSMAJOR) )
-( cd "$(DESTDIR)$(libdir)" && rm -f libconfig.$(SHOBJEXT) && $(LN_S) libconfig.$(SHOBJEXT).$(PKGVERS) libconfig.$(SHOBJEXT) )
clean:
rm -f *.o $(BINS) $(LIBS) *~ test-lc$(EXEEXT) *.dll.a *.dll.def *.dll
distclean: clean
rm -f Makefile config.h config.status config.log lc_geterrno.3 lc_process.3 lc_cleanup.3 lc_process_file.3 lc_register_var.3 lc_geterrstr.3 lc_register_callback.3 libconfig.3 libconfig.syms
mrproper: distclean
rm -f aclocal.m4 config.guess config.sub install-sh configure
.PHONY: all clean distclean install
|