File: Makefile

package info (click to toggle)
aca 0.1.6
  • links: PTS
  • area: main
  • in suites: woody
  • size: 492 kB
  • ctags: 569
  • sloc: ansic: 4,254; sh: 2,237; makefile: 256
file content (92 lines) | stat: -rw-r--r-- 2,407 bytes parent folder | download | duplicates (2)
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
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

#
#  Copyright (c) 1998 - 1999, 2001 Karel Zak "Zakkr" <zakkr@zf.jcu.cz>
#
#  This program is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 2 of the License, or
#  (at your option) any later version.
#
#  $Id: Makefile,v 1.3 2001/01/02 14:16:15 zakkr Exp $
#

TOPDIR =..
include $(TOPDIR)/Makeconf

OBJS=	draw.o astr.o colors.o key.o mouse.o utils.o ini_file.o\
     	button.o input.o menu.o radio.o session.o widget_utils.o\
	simple.o file_view.o select_file.o learn_key.o

NAME= $(PACKAGE)
SO_MAJOR_VERSION= 0
SO_MINOR_VERSION= 1


shlib		:= lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LD		:= $(CC)
LDFLAGS_SL	:= -shared -Wl,-soname,$(shlib)

all: lib$(NAME).a $(shlib)

# Rules to build regular and shared libraries

lib$(NAME).a: $(OBJS)
	$(AR) $(AROPT) $@ $^

# Normal case
$(shlib): $(OBJS)
	$(LD) $(LDFLAGS_SL) -o $@ $(OBJS) $(SHLIB_LINK)
# If we're using major and minor versions, then make a symlink to major-version-only.
ifneq ($(shlib), lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION))
	rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
	$(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
endif
# Make sure we have a link to a name without any version numbers
ifneq ($(shlib), lib$(NAME)$(DLSUFFIX))
	rm -f lib$(NAME)$(DLSUFFIX)
	$(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX)
endif

##
## INSTALL
##

install: install-lib-shared install-lib-static

install-lib-static: lib$(NAME).a
	$(INSTALL_DATA) $< $(libdir)/lib$(NAME).a

install-lib-shared: $(shlib)
	$(INSTALL_SHLIB) $< $(libdir)/$(shlib)
ifneq ($(shlib), lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION))
	cd $(libdir) && \
	rm -f lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION) && \
	$(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
endif
ifneq ($(shlib), lib$(NAME)$(DLSUFFIX))
	cd $(libdir) && \
	rm -f lib$(NAME)$(DLSUFFIX) && \
	$(LN_S) $(shlib) lib$(NAME)$(DLSUFFIX)
endif

##
## UNINSTALL
##

uninstall:
	rm -f $(libdir)/lib$(NAME).a
	rm -f $(libdir)/lib$(NAME)$(DLSUFFIX) \
	$(libdir)/lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION) \
	$(libdir)/lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)

##
## CLEAN
##

clean-lib:
	rm -f lib$(NAME).a
	rm -f $(shlib) lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION) lib$(NAME)$(DLSUFFIX)

clean distclean maintainer-clean: clean-lib
	rm -f $(OBJS) *~