Makefile.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue May 20 21:32:39 2008 +0000 (2008-05-20)
changeset 523 010f6f4e4dd6
parent 435 ff598e5b4bb5
child 543 1df70ed4510d
permissions -rw-r--r--
Get rid of all `command` (which is a bashism), and replace them with $(command), which is POSIX.
Get rid of all remaining \"text\" in log messages and replace them with 'text'.
Optimise the progress bar, should go un-noticed at log level DEBUG and below.

/trunk/scripts/build/tools/200-sstrip.sh | 16 8 8 0 ++--
/trunk/scripts/build/libc_glibc.sh | 50 25 25 0 +++++++-------
/trunk/scripts/build/libc_uClibc.sh | 4 2 2 0
/trunk/scripts/build/debug/100-dmalloc.sh | 2 1 1 0
/trunk/scripts/build/debug/400-ltrace.sh | 2 1 1 0
/trunk/scripts/build/debug/300-gdb.sh | 8 4 4 0 +-
/trunk/scripts/build/debug/200-duma.sh | 6 3 3 0 +-
/trunk/scripts/build/kernel_linux.sh | 30 15 15 0 ++++----
/trunk/scripts/build/cc_gcc.sh | 14 7 7 0 ++--
/trunk/scripts/crosstool.sh | 54 27 27 0 ++++++++--------
/trunk/scripts/functions | 128 64 64 0 ++++++++++++++++++------------------
/trunk/scripts/saveSample.sh | 4 2 2 0
/trunk/scripts/tarball.sh.broken | 20 10 10 0 +++---
/trunk/tools/addToolVersion.sh | 8 4 4 0 +-
/trunk/tools/populate.in | 18 9 9 0 ++--
15 files changed, 182 insertions(+), 182 deletions(-)
yann@197
     1
# Makefile.in for building crosstool-NG
yann@182
     2
# This file serves as source for the ./configure operation
yann@182
     3
yann@382
     4
all: Makefile build
yann@382
     5
yann@382
     6
# Check if Makefile is up to date:
yann@382
     7
Makefile: Makefile.in
yann@382
     8
	@echo "$< did changed: you must re-run './configure'"
yann@382
     9
	@false
yann@182
    10
yann@182
    11
###############################################################################
yann@182
    12
# Configuration variables
yann@182
    13
yann@182
    14
VERSION:= @@VERSION@@
yann@182
    15
BINDIR := @@BINDIR@@
yann@185
    16
LIBDIR := @@LIBDIR@@
yann@185
    17
DOCDIR := @@DOCDIR@@
yann@185
    18
MANDIR := @@MANDIR@@
yann@182
    19
DATE   := @@DATE@@
yann@285
    20
LOCAL  := @@LOCAL@@
yann@285
    21
MAKE   := $(shell which $(MAKE) || type -p $(MAKE) || echo /usr/bin/make)
yann@182
    22
yann@182
    23
###############################################################################
yann@182
    24
# Global make rules
yann@182
    25
yann@309
    26
build: build-bin build-lib build-man
yann@182
    27
yann@296
    28
install: install-local-test build install-bin install-lib install-doc install-man
yann@182
    29
yann@182
    30
clean: clean-bin clean-lib clean-doc
yann@182
    31
yann@182
    32
distclean: clean
yann@318
    33
	@echo "  RM     Makefile"
yann@182
    34
	@rm -f Makefile
yann@182
    35
yann@296
    36
uninstall: install-local-test uninstall-bin uninstall-lib uninstall-doc uninstall-man
yann@182
    37
yann@182
    38
###############################################################################
yann@182
    39
# Specific make rules
yann@182
    40
yann@182
    41
#--------------------------------------
yann@182
    42
# Build rules
yann@182
    43
yann@182
    44
build-bin: ct-ng
yann@318
    45
	@echo "  CHMOD  $<"
yann@318
    46
	@chmod a+x $<
yann@182
    47
yann@182
    48
build-lib:
yann@182
    49
yann@309
    50
build-man: docs/ct-ng.1.gz
yann@309
    51
yann@309
    52
docs/ct-ng.1.gz: docs/ct-ng.1
yann@309
    53
	@echo "  GZIP   $@"
yann@317
    54
	@gzip -c9 $< >$@
yann@182
    55
yann@470
    56
%: %.in Makefile
yann@249
    57
	@echo "  SED    $@"
yann@182
    58
	@sed -r -e 's,@@CT_MAKE@@,$(MAKE),g;'       \
yann@182
    59
	        -e 's,@@CT_BINDIR@@,$(BINDIR),g;'   \
yann@182
    60
	        -e 's,@@CT_LIBDIR@@,$(LIBDIR),g;'   \
yann@182
    61
	        -e 's,@@CT_DOCDIR@@,$(DOCDIR),g;'   \
yann@182
    62
	        -e 's,@@CT_MANDIR@@,$(MANDIR),g;'   \
yann@182
    63
	        -e 's,@@CT_VERSION@@,$(VERSION),g;'	\
yann@182
    64
	        -e 's,@@CT_DATE@@,$(DATE),g;'       \
yann@182
    65
	     $@.in >$@
yann@182
    66
yann@182
    67
#--------------------------------------
yann@182
    68
# Clean rules
yann@182
    69
yann@182
    70
clean-bin:
yann@318
    71
	@echo "  RM     ct-ng"
yann@182
    72
	@rm -f ct-ng
yann@182
    73
yann@182
    74
clean-lib:
yann@182
    75
yann@182
    76
clean-doc:
yann@318
    77
	@echo "  RM     docs/ct-ng.1"
yann@318
    78
	@rm -f docs/ct-ng.1
yann@318
    79
	@echo "  RM     docs/ct-ng.1.gz"
yann@318
    80
	@rm -f docs/ct-ng.1.gz
yann@182
    81
yann@182
    82
#--------------------------------------
yann@182
    83
# Install rules
yann@182
    84
yann@425
    85
# If using locally, don't install
yann@285
    86
install-local-test:
yann@296
    87
	@if [ "$(LOCAL)" = "1" ]; then                                          \
yann@296
    88
	     echo "You're using local copy as runtime. You can't (un)install."; \
yann@296
    89
	     false;                                                             \
yann@285
    90
	 fi
yann@285
    91
yann@285
    92
install-bin: install-local-test $(BINDIR)
yann@249
    93
	@echo "  INST   ct-ng"
yann@182
    94
	@install -m 755 ct-ng $(BINDIR)/ct-ng
yann@182
    95
yann@285
    96
install-lib: install-local-test $(LIBDIR) install-lib-main install-lib-samples
yann@182
    97
yann@285
    98
install-lib-main: install-local-test $(LIBDIR)
yann@380
    99
	@for src_dir in arch config kconfig patches scripts tools; do            \
yann@249
   100
	     echo "  INST   $${src_dir}/";                                  \
yann@182
   101
	     tar cf - --exclude=.svn $${src_dir} |(cd $(LIBDIR); tar xf -); \
yann@182
   102
	 done
yann@223
   103
	@rm -f $(LIBDIR)/tools/addToolVersion.sh
yann@435
   104
	@echo "  INST   steps.mk"
yann@435
   105
	@install -m 644 steps.mk $(LIBDIR)/steps.mk
yann@435
   106
	@echo "  INST   .version"
yann@435
   107
	@echo "$(VERSION)" >$(LIBDIR)/.version
yann@182
   108
yann@182
   109
# Samples need a little love:
yann@425
   110
#  - change every occurrence of CT_TOP_DIR to CT_LIB_DIR
yann@285
   111
install-lib-samples: install-local-test $(LIBDIR) install-lib-main
yann@249
   112
	@echo "  INST   samples/"
yann@182
   113
	@tar cf - --exclude=.svn samples |(cd $(LIBDIR); tar xf -)
yann@194
   114
	@for samp_file in $(LIBDIR)/samples/*/crosstool.config; do                  \
yann@182
   115
	     sed -r -i -e 's,\$$\{CT_TOP_DIR\},\$$\{CT_LIB_DIR\},g;' $${samp_file}; \
yann@182
   116
	 done
yann@182
   117
yann@285
   118
install-doc: install-local-test $(DOCDIR)
yann@286
   119
	@for doc_file in docs/CREDITS docs/overview.txt; do	\
yann@286
   120
	     echo "  INST   $${doc_file}";              	\
yann@286
   121
	     install -m 644 "$${doc_file}" $(DOCDIR);   	\
yann@182
   122
	 done
yann@249
   123
yann@285
   124
install-man: install-local-test $(MANDIR)
yann@309
   125
	@echo "  INST   ct-ng.1.gz"
yann@309
   126
	@install -m 644 docs/ct-ng.1.gz $(MANDIR)
yann@182
   127
yann@184
   128
$(BINDIR) $(LIBDIR) $(DOCDIR) $(MANDIR)::
yann@249
   129
	@echo "  MKDIR  $@"
yann@182
   130
	@install -m 755 -d $@
yann@182
   131
yann@182
   132
yann@182
   133
#--------------------------------------
yann@182
   134
# Uninstall rules
yann@182
   135
yann@296
   136
uninstall-bin: install-local-test
yann@182
   137
	@rm -f $(BINDIR)/ct-ng
yann@182
   138
yann@296
   139
uninstall-lib: install-local-test
yann@182
   140
	@rm -rf $(LIBDIR)
yann@182
   141
yann@296
   142
uninstall-doc: install-local-test
yann@182
   143
	@rm -rf $(DOCDIR)
yann@298
   144
yann@298
   145
uninstall-man: install-local-test
yann@307
   146
	@rm -f $(MANDIR)/ct-ng.1{,.gz}