Now building a common library (libPanel)
This commit is contained in:
parent
ef32f3fc0e
commit
f5943637b8
48
src/Makefile
48
src/Makefile
|
@ -1,14 +1,18 @@
|
|||
SUBDIRS = applets
|
||||
TARGETS = panel panelctl run
|
||||
TARGETS = libPanel.a libPanel.so.0.0 libPanel.so.0 libPanel.so panel panelctl run
|
||||
PREFIX = /usr/local
|
||||
DESTDIR =
|
||||
BINDIR = $(PREFIX)/bin
|
||||
SBINDIR = $(PREFIX)/sbin
|
||||
LIBDIR = $(PREFIX)/lib
|
||||
CC = cc
|
||||
CPPFLAGSF=
|
||||
CPPFLAGS=
|
||||
CFLAGSF = -W
|
||||
CFLAGS = -Wall -g -O2 -pedantic
|
||||
AR = ar
|
||||
RANLIB = ranlib
|
||||
CCSHARED= $(CC) -shared
|
||||
BINDIR = $(PREFIX)/bin
|
||||
SBINDIR = $(PREFIX)/sbin
|
||||
RM = rm -f
|
||||
LN = ln -f
|
||||
MKDIR = mkdir -m 0755 -p
|
||||
|
@ -20,11 +24,24 @@ all: subdirs $(TARGETS)
|
|||
subdirs:
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE)) || exit; done
|
||||
|
||||
panel_OBJS = panel.o window.o main.o
|
||||
panel_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) -D PREFIX=\"$(PREFIX)\" $(CFLAGSF) $(CFLAGS) `pkg-config --cflags libDesktop`
|
||||
panel_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) `pkg-config --libs libDesktop` -lintl
|
||||
libPanel_OBJS = panel.o window.o
|
||||
libPanel_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) -D PREFIX=\"$(PREFIX)\" $(CFLAGSF) $(CFLAGS) `pkg-config --cflags libDesktop` -fPIC
|
||||
libPanel_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) `pkg-config --libs libDesktop` -lintl
|
||||
|
||||
panel: $(panel_OBJS)
|
||||
libPanel.a: $(libPanel_OBJS)
|
||||
$(AR) -rc libPanel.a $(libPanel_OBJS)
|
||||
$(RANLIB) libPanel.a
|
||||
|
||||
libPanel.so.0.0 libPanel.so.0 libPanel.so: $(libPanel_OBJS)
|
||||
$(CCSHARED) -o libPanel.so.0.0 -Wl,-soname,libPanel.so.0 $(libPanel_OBJS) $(libPanel_LDFLAGS)
|
||||
$(LN) -s -- libPanel.so.0.0 libPanel.so.0
|
||||
$(LN) -s -- libPanel.so.0.0 libPanel.so
|
||||
|
||||
panel_OBJS = main.o
|
||||
panel_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) -D PREFIX=\"$(PREFIX)\" $(CFLAGSF) $(CFLAGS) `pkg-config --cflags libDesktop`
|
||||
panel_LDFLAGS = $(LDFLAGSF) $(LDFLAGS) `pkg-config --libs libDesktop` -lintl -L. -Wl,-rpath,$(LIBDIR) -lPanel
|
||||
|
||||
panel: $(panel_OBJS) libPanel.a
|
||||
$(CC) -o panel $(panel_OBJS) $(panel_LDFLAGS)
|
||||
|
||||
panelctl_OBJS = panelctl.o
|
||||
|
@ -42,10 +59,10 @@ run: $(run_OBJS)
|
|||
$(CC) -o run $(run_OBJS) $(run_LDFLAGS)
|
||||
|
||||
panel.o: panel.c panel.h window.h ../include/Panel.h helper.c ../config.h
|
||||
$(CC) $(panel_CFLAGS) -c panel.c
|
||||
$(CC) $(libPanel_CFLAGS) -c panel.c
|
||||
|
||||
window.o: window.c ../include/Panel.h panel.h window.h
|
||||
$(CC) $(panel_CFLAGS) -c window.c
|
||||
$(CC) $(libPanel_CFLAGS) -c window.c
|
||||
|
||||
main.o: main.c ../include/Panel.h panel.h ../config.h
|
||||
$(CC) $(panel_CFLAGS) -c main.c
|
||||
|
@ -58,15 +75,20 @@ run.o: run.c
|
|||
|
||||
clean:
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE) clean) || exit; done
|
||||
$(RM) -- $(panel_OBJS) $(panelctl_OBJS) $(run_OBJS)
|
||||
$(RM) -- $(libPanel_OBJS) $(panel_OBJS) $(panelctl_OBJS) $(run_OBJS)
|
||||
|
||||
distclean:
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE) distclean) || exit; done
|
||||
$(RM) -- $(panel_OBJS) $(panelctl_OBJS) $(run_OBJS)
|
||||
$(RM) -- $(libPanel_OBJS) $(panel_OBJS) $(panelctl_OBJS) $(run_OBJS)
|
||||
$(RM) -- $(TARGETS)
|
||||
|
||||
install: $(TARGETS)
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE) install) || exit; done
|
||||
$(MKDIR) $(DESTDIR)$(LIBDIR)
|
||||
$(INSTALL) -m 0644 libPanel.a $(DESTDIR)$(LIBDIR)/libPanel.a
|
||||
$(INSTALL) -m 0755 libPanel.so.0.0 $(DESTDIR)$(LIBDIR)/libPanel.so.0.0
|
||||
$(LN) -s -- libPanel.so.0.0 $(DESTDIR)$(LIBDIR)/libPanel.so.0
|
||||
$(LN) -s -- libPanel.so.0.0 $(DESTDIR)$(LIBDIR)/libPanel.so
|
||||
$(MKDIR) $(DESTDIR)$(BINDIR)
|
||||
$(INSTALL) -m 0755 panel $(DESTDIR)$(BINDIR)/panel
|
||||
$(MKDIR) $(DESTDIR)$(BINDIR)
|
||||
|
@ -76,6 +98,10 @@ install: $(TARGETS)
|
|||
|
||||
uninstall:
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE) uninstall) || exit; done
|
||||
$(RM) -- $(DESTDIR)$(LIBDIR)/libPanel.a
|
||||
$(RM) -- $(DESTDIR)$(LIBDIR)/libPanel.so.0.0
|
||||
$(RM) -- $(DESTDIR)$(LIBDIR)/libPanel.so.0
|
||||
$(RM) -- $(DESTDIR)$(LIBDIR)/libPanel.so
|
||||
$(RM) -- $(DESTDIR)$(BINDIR)/panel
|
||||
$(RM) -- $(DESTDIR)$(BINDIR)/panelctl
|
||||
$(RM) -- $(DESTDIR)$(BINDIR)/run
|
||||
|
|
|
@ -1,16 +1,25 @@
|
|||
subdirs=applets
|
||||
targets=panel,panelctl,run
|
||||
targets=libPanel,panel,panelctl,run
|
||||
#cppflags=-D EMBEDDED
|
||||
cflags_force=-W
|
||||
cflags=-Wall -g -O2 -pedantic
|
||||
dist=Makefile,helper.c,panel.h,window.h
|
||||
|
||||
[libPanel]
|
||||
type=library
|
||||
sources=panel.c,window.c
|
||||
cppflags=-D PREFIX=\"$(PREFIX)\"
|
||||
cflags=`pkg-config --cflags libDesktop` -fPIC
|
||||
ldflags=`pkg-config --libs libDesktop` -lintl
|
||||
install=$(LIBDIR)
|
||||
|
||||
[panel]
|
||||
type=binary
|
||||
sources=panel.c,window.c,main.c
|
||||
depends=libPanel.a
|
||||
sources=main.c
|
||||
cppflags=-D PREFIX=\"$(PREFIX)\"
|
||||
cflags=`pkg-config --cflags libDesktop`
|
||||
ldflags=`pkg-config --libs libDesktop` -lintl
|
||||
ldflags=`pkg-config --libs libDesktop` -lintl -L. -Wl,-rpath,$(LIBDIR) -lPanel
|
||||
install=$(BINDIR)
|
||||
|
||||
[main.c]
|
||||
|
|
Loading…
Reference in New Issue
Block a user