standalone: Use more variables, preparing to include these files from main
[ira/wip.git] / lib / tevent / tevent.mk
1 TEVENT_SONAME = libtevent.$(SHLIBEXT).0
2 TEVENT_SOLIB = libtevent.$(SHLIBEXT).$(PACKAGE_VERSION)
3 TEVENT_STLIB = libtevent.a
4
5 $(TEVENT_STLIB): $(TEVENT_OBJ)
6         ar -rv $(TEVENT_STLIB) $(TEVENT_OBJ)
7
8 libtevent.$(SHLIBEXT): $(TEVENT_SOLIB)
9         ln -fs $< $@
10
11 $(TEVENT_SONAME): $(TEVENT_SOLIB)
12         ln -fs $< $@
13
14 dirs::
15         @mkdir -p lib
16
17 installdirs::
18         mkdir -p $(DESTDIR)$(includedir)
19         mkdir -p $(DESTDIR)$(libdir)
20         mkdir -p $(DESTDIR)$(libdir)/pkgconfig
21
22 installheaders:: installdirs
23         cp $(srcdir)/tevent.h $(DESTDIR)$(includedir)
24
25 installlibs:: installdirs
26         cp tevent.pc $(DESTDIR)$(libdir)/pkgconfig
27         cp $(TEVENT_STLIB) $(TEVENT_SOLIB) $(DESTDIR)$(libdir)
28
29 install:: all installdirs installheaders installlibs $(PYTHON_INSTALL_TARGET)
30
31 clean::
32         rm -f $(TEVENT_SONAME) $(TEVENT_SOLIB) $(TEVENT_STLIB) libtevent.$(SHLIBEXT)
33         rm -f tevent.pc
34         rm -f tevent.$(SHLIBEXT)
35
36 #python stuff
37
38 check-python:: build-python
39         $(LIB_PATH_VAR)=. PYTHONPATH=".:$(teventdir)" $(PYTHON) $(teventdir)/tests.py
40
41 build-python:: tevent.$(SHLIBEXT)
42
43 pytevent.o: $(teventdir)/pytevent.c
44         $(CC) $(PICFLAG) -c $(teventdir)/pytevent.c $(CFLAGS) `$(PYTHON_CONFIG) --cflags`
45
46 tevent.$(SHLIBEXT): libtevent.$(SHLIBEXT) pytevent.o
47         $(SHLD) $(SHLD_FLAGS) -o $@ pytevent.o -L. -ltevent `$(PYTHON_CONFIG) --libs`
48
49 install-python:: build-python
50         mkdir -p $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(0, prefix='$(prefix)')"` \
51                 $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, prefix='$(prefix)')"`
52         cp tevent.$(SHLIBEXT) $(DESTDIR)`$(PYTHON) -c "import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, prefix='$(prefix)')"`
53