source: roaraudio/build-system/Makefile.install @ 5786:c692f5468711

Last change on this file since 5786:c692f5468711 was 5786:c692f5468711, checked in by phi, 11 years ago

corrected uninstall target

File size: 4.0 KB
Line 
1#     Copyright (C) Philipp 'ph3-der-loewe' Schafft - 2012
2#
3# This file is part of roard a part of RoarAudio,
4# a cross-platform sound system for both, home and professional use.
5# See README for details.
6#
7# This file is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License version 3
9# as published by the Free Software Foundation.
10#
11# RoarAudio is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this software; see the file COPYING.  If not, write to
18# the Free Software Foundation, 51 Franklin Street, Fifth Floor,
19# Boston, MA 02110-1301, USA.
20
21RABS_INSTALL_TARGETS_PREP_DIRS    := $(foreach c,$(RABS_INSTALL_TARGETS),prep-install-dirs-$c)
22RABS_INSTALL_TARGETS_INSTALL      := $(foreach c,$(RABS_INSTALL_TARGETS),install-$c)
23RABS_INSTALL_TARGETS_SEMI_INSTALL := $(foreach c,$(RABS_INSTALL_TARGETS),semi-install-$c)
24RABS_INSTALL_TARGETS_UNINSTALL    := $(foreach c,$(RABS_INSTALL_TARGETS),uninstall-$c)
25
26prep-install-dirs: $(RABS_INSTALL_TARGETS_PREP_DIRS)
27prep-install: all prep-install-dirs
28install: $(RABS_INSTALL_TARGETS_INSTALL)
29semi-install: $(RABS_INSTALL_TARGETS_SEMI_INSTALL)
30uninstall: $(RABS_INSTALL_TARGETS_UNINSTALL)
31
32prep-install-dirs-bin:
33        mkdir -p '$(DESTDIR)$(PREFIX_BIN)'
34        mkdir -p '$(DESTDIR)$(PREFIX_MAN)'/man1/
35prep-install-dirs-tools: prep-install-dirs-bin
36prep-install-dirs-header:
37        mkdir -p '$(DESTDIR)$(PREFIX_INC)'/'$(HEADER_PREFIX)'
38prep-install-dirs-lib: prep-install-dirs-header
39        mkdir -p '$(DESTDIR)$(PREFIX_LIB)'
40        mkdir -p '$(DESTDIR)$(PREFIX_PC)'
41        mkdir -p '$(DESTDIR)$(PREFIX_MAN)'/man3/
42
43prep-install-bin: all prep-install-dirs-bin
44prep-install-tools: all prep-install-dirs-tools
45prep-install-header: all prep-install-dirs-header
46prep-install-lib: all prep-install-dirs-lib
47
48# this works for both, -bin and -tools
49install-bin: prep-install-bin
50        cp $(cp_v) $(TARGETS)   '$(DESTDIR)$(PREFIX_BIN)'
51        cp $(cp_v) $(MANPAGE_1) '$(DESTDIR)$(PREFIX_MAN)'/man1/
52install-tools: install-bin
53install-lib: prep-install-lib
54        cp $(cp_v) $(TARGETS)   '$(DESTDIR)$(PREFIX_LIB)'
55        cp $(cp_v) $(PCLIBNAME) '$(DESTDIR)$(PREFIX_PC)'
56        sh -c 'set -e; for file in $(HEADERS);    do cp $(cp_v) $(HEADERS_DIR)/$$file '$(DESTDIR)$(PREFIX_INC)'/'$(HEADER_PREFIX)'; done'
57        sh -c 'set -e; for file in $(MANPAGE_3);  do cp $(cp_v) $$file '$(DESTDIR)$(PREFIX_MAN)'/man3/; done'
58#       cp $(cp_v) $(CKPORTDB)
59
60semi-install-bin: prep-install-bin
61        ln -fs `pwd`/$(TARGET)  '$(DESTDIR)$(PREFIX_BIN)'
62        ln -fs `pwd`/$(MANPAGE_1) '$(DESTDIR)$(PREFIX_MAN)'/man1/
63semi-install-tools: prep-install-tools
64        sh -c 'set -e; for file in $(TARGETS);    do ln -fs `pwd`/$$file '$(DESTDIR)$(PREFIX_BIN)'/; done'
65        sh -c 'set -e; for file in $(MANPAGE_1);  do ln -fs `pwd`/$$file '$(DESTDIR)$(PREFIX_MAN)'/man1/; done'
66semi-install-lib: prep-install-lib
67        sh -c 'set -e; for file in $(TARGETS);    do ln -fs `pwd`/$$file '$(DESTDIR)$(PREFIX_LIB)'/; done'
68        ln -fs `pwd`/$(PCLIBNAME)  '$(DESTDIR)$(PREFIX_PC)'
69        sh -c 'set -e; for file in $(HEADERS);    do ln -fs `pwd`/$(HEADERS_DIR)/$$file '$(DESTDIR)$(PREFIX_INC)'/'$(HEADER_PREFIX)'; done'
70        sh -c 'set -e; for file in $(MANPAGE_3);  do ln -fs `pwd`/$$file '$(DESTDIR)$(PREFIX_MAN)'/man3/; done'
71
72uninstall-bin:
73        rm -f '$(DESTDIR)$(PREFIX_BIN)/$(TARGET)'
74        rm -f '$(DESTDIR)$(PREFIX_MAN)/man1/$(MANPAGE_1)'
75uninstall-tools:
76        sh -c 'set -e; for file in $(TARGETS);    do rm -f '$(DESTDIR)$(PREFIX_BIN)/'$$file; done'
77        sh -c 'set -e; for file in $(MANPAGE_1);  do rm -f '$(DESTDIR)$(PREFIX_MAN)/man1/'$$file; done'
78uninstall-lib:
79        sh -c 'set -e; for file in $(TARGETS);    do rm -f '$(DESTDIR)$(PREFIX_LIB)/'$$file; done'
80        rm -f '$(DESTDIR)$(PREFIX_PC)/$(PCLIBNAME)'
81        sh -c 'set -e; for file in $(HEADERS);    do rm -f '$(DESTDIR)$(PREFIX_INC)'/'$(HEADER_PREFIX)/'$$file; done'
82        sh -c 'set -e; for file in $(MANPAGE_3);  do rm -f '$(DESTDIR)$(PREFIX_MAN)/man3/$$file'; done'
Note: See TracBrowser for help on using the repository browser.