source: protocols/Makefile @ 8e6ecfe

Last change on this file since 8e6ecfe was 7281ad1, checked in by Wilmer van der Gaast <wilmer@…>, at 2012-09-15T15:59:17Z

Allow building position-independent executables. #981, patch from brainsmoke.

  • Property mode set to 100644
File size: 1.3 KB
RevLine 
[b7d3cc34]1###########################
2## Makefile for BitlBee  ##
3##                       ##
4## Copyright 2002 Lintux ##
5###########################
6
7### DEFINITIONS
8
9-include ../Makefile.settings
[7fa5c19]10ifdef _SRCDIR_
11_SRCDIR_ := $(_SRCDIR_)protocols/
[f60079b]12endif
[b7d3cc34]13
14# [SH] Program variables
[aea8b68]15objects = account.o bee.o bee_chat.o bee_ft.o bee_user.o nogaim.o
[3ddb7477]16
[b7d3cc34]17
18# [SH] The next two lines should contain the directory name (in $(subdirs))
19#      and the name of the object file, which should be linked into
20#      protocols.o (in $(subdirobjs)). These need to be in order, i.e. the
21#      first object file should be in the first directory.
22subdirs = $(PROTOCOLS)
23subdirobjs = $(PROTOOBJS)
24
25# Expansion of variables
26subdirobjs := $(join $(subdirs),$(addprefix /,$(subdirobjs)))
27LFLAGS += -r
28
29# [SH] Phony targets
30all: protocols.o
[66b9e86e]31check: all
[fc5cf88]32lcov: check
[66b9e86e]33gcov:
34        gcov *.c
[b7d3cc34]35
36.PHONY: all clean distclean $(subdirs)
37
38clean: $(subdirs)
39        rm -f *.o $(OUTFILE) core
40
41distclean: clean $(subdirs)
[b0a89cc]42        rm -rf .depend
[b7d3cc34]43
44$(subdirs):
45        @$(MAKE) -C $@ $(MAKECMDGOALS)
46
47### MAIN PROGRAM
48
49protocols.o: $(objects) $(subdirs)
50        @echo '*' Linking protocols.o
51        @$(LD) $(LFLAGS) $(objects) $(subdirobjs) -o protocols.o
52
53$(objects): ../Makefile.settings Makefile
54
[7fa5c19]55$(objects): %.o: $(_SRCDIR_)%.c
[b7d3cc34]56        @echo '*' Compiling $<
[7281ad1]57        @$(CC) -c $(CFLAGS) $(CFLAGS_BITLBEE) $< -o $@
[b0a89cc]58
59-include .depend/*.d
Note: See TracBrowser for help on using the repository browser.