Makefile.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Sep 11 17:50:18 2007 +0000 (2007-09-11)
changeset 374 3538bcdf24cf
parent 318 f584c33de0ba
child 380 2f7b676c7b2f
permissions -rw-r--r--
Update credits to give adequate credit to Al Stone.
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@182
     4
all: build
yann@182
     5
yann@182
     6
###############################################################################
yann@182
     7
# Configuration variables
yann@182
     8
yann@182
     9
VERSION:= @@VERSION@@
yann@182
    10
BINDIR := @@BINDIR@@
yann@185
    11
LIBDIR := @@LIBDIR@@
yann@185
    12
DOCDIR := @@DOCDIR@@
yann@185
    13
MANDIR := @@MANDIR@@
yann@182
    14
DATE   := @@DATE@@
yann@285
    15
LOCAL  := @@LOCAL@@
yann@285
    16
MAKE   := $(shell which $(MAKE) || type -p $(MAKE) || echo /usr/bin/make)
yann@182
    17
yann@182
    18
###############################################################################
yann@182
    19
# Global make rules
yann@182
    20
yann@309
    21
build: build-bin build-lib build-man
yann@182
    22
yann@296
    23
install: install-local-test build install-bin install-lib install-doc install-man
yann@182
    24
yann@182
    25
clean: clean-bin clean-lib clean-doc
yann@182
    26
yann@182
    27
distclean: clean
yann@318
    28
	@echo "  RM     Makefile"
yann@182
    29
	@rm -f Makefile
yann@182
    30
yann@296
    31
uninstall: install-local-test uninstall-bin uninstall-lib uninstall-doc uninstall-man
yann@182
    32
yann@182
    33
###############################################################################
yann@182
    34
# Specific make rules
yann@182
    35
yann@182
    36
#--------------------------------------
yann@182
    37
# Build rules
yann@182
    38
yann@182
    39
build-bin: ct-ng
yann@318
    40
	@echo "  CHMOD  $<"
yann@318
    41
	@chmod a+x $<
yann@182
    42
yann@182
    43
build-lib:
yann@182
    44
yann@309
    45
build-man: docs/ct-ng.1.gz
yann@309
    46
yann@309
    47
docs/ct-ng.1.gz: docs/ct-ng.1
yann@309
    48
	@echo "  GZIP   $@"
yann@317
    49
	@gzip -c9 $< >$@
yann@182
    50
yann@182
    51
%: %.in
yann@249
    52
	@echo "  SED    $@"
yann@182
    53
	@sed -r -e 's,@@CT_MAKE@@,$(MAKE),g;'       \
yann@182
    54
	        -e 's,@@CT_BINDIR@@,$(BINDIR),g;'   \
yann@182
    55
	        -e 's,@@CT_LIBDIR@@,$(LIBDIR),g;'   \
yann@182
    56
	        -e 's,@@CT_DOCDIR@@,$(DOCDIR),g;'   \
yann@182
    57
	        -e 's,@@CT_MANDIR@@,$(MANDIR),g;'   \
yann@182
    58
	        -e 's,@@CT_VERSION@@,$(VERSION),g;'	\
yann@182
    59
	        -e 's,@@CT_DATE@@,$(DATE),g;'       \
yann@182
    60
	     $@.in >$@
yann@182
    61
yann@182
    62
#--------------------------------------
yann@182
    63
# Clean rules
yann@182
    64
yann@182
    65
clean-bin:
yann@318
    66
	@echo "  RM     ct-ng"
yann@182
    67
	@rm -f ct-ng
yann@182
    68
yann@182
    69
clean-lib:
yann@182
    70
yann@182
    71
clean-doc:
yann@318
    72
	@echo "  RM     docs/ct-ng.1"
yann@318
    73
	@rm -f docs/ct-ng.1
yann@318
    74
	@echo "  RM     docs/ct-ng.1.gz"
yann@318
    75
	@rm -f docs/ct-ng.1.gz
yann@182
    76
yann@182
    77
#--------------------------------------
yann@182
    78
# Install rules
yann@182
    79
yann@285
    80
# If using localy, don't install
yann@285
    81
install-local-test:
yann@296
    82
	@if [ "$(LOCAL)" = "1" ]; then                                          \
yann@296
    83
	     echo "You're using local copy as runtime. You can't (un)install."; \
yann@296
    84
	     false;                                                             \
yann@285
    85
	 fi
yann@285
    86
yann@285
    87
install-bin: install-local-test $(BINDIR)
yann@249
    88
	@echo "  INST   ct-ng"
yann@182
    89
	@install -m 755 ct-ng $(BINDIR)/ct-ng
yann@182
    90
yann@285
    91
install-lib: install-local-test $(LIBDIR) install-lib-main install-lib-samples
yann@182
    92
yann@285
    93
install-lib-main: install-local-test $(LIBDIR)
yann@182
    94
	@for src_dir in config kconfig patches scripts tools; do            \
yann@249
    95
	     echo "  INST   $${src_dir}/";                                  \
yann@182
    96
	     tar cf - --exclude=.svn $${src_dir} |(cd $(LIBDIR); tar xf -); \
yann@182
    97
	 done
yann@223
    98
	@rm -f $(LIBDIR)/tools/addToolVersion.sh
yann@334
    99
	@for src_file in steps.mk .version; do                 \
yann@249
   100
	     echo "  INST   $${src_file}";                          \
yann@182
   101
	     install -m 644 $${src_file} $(LIBDIR)/$${src_file};    \
yann@182
   102
	 done
yann@182
   103
yann@182
   104
# Samples need a little love:
yann@182
   105
#  - change every occurence of CT_TOP_DIR to CT_LIB_DIR
yann@285
   106
install-lib-samples: install-local-test $(LIBDIR) install-lib-main
yann@249
   107
	@echo "  INST   samples/"
yann@182
   108
	@tar cf - --exclude=.svn samples |(cd $(LIBDIR); tar xf -)
yann@194
   109
	@for samp_file in $(LIBDIR)/samples/*/crosstool.config; do                  \
yann@182
   110
	     sed -r -i -e 's,\$$\{CT_TOP_DIR\},\$$\{CT_LIB_DIR\},g;' $${samp_file}; \
yann@182
   111
	 done
yann@182
   112
yann@285
   113
install-doc: install-local-test $(DOCDIR)
yann@286
   114
	@for doc_file in docs/CREDITS docs/overview.txt; do	\
yann@286
   115
	     echo "  INST   $${doc_file}";              	\
yann@286
   116
	     install -m 644 "$${doc_file}" $(DOCDIR);   	\
yann@182
   117
	 done
yann@249
   118
yann@285
   119
install-man: install-local-test $(MANDIR)
yann@309
   120
	@echo "  INST   ct-ng.1.gz"
yann@309
   121
	@install -m 644 docs/ct-ng.1.gz $(MANDIR)
yann@182
   122
yann@184
   123
$(BINDIR) $(LIBDIR) $(DOCDIR) $(MANDIR)::
yann@249
   124
	@echo "  MKDIR  $@"
yann@182
   125
	@install -m 755 -d $@
yann@182
   126
yann@182
   127
yann@182
   128
#--------------------------------------
yann@182
   129
# Uninstall rules
yann@182
   130
yann@296
   131
uninstall-bin: install-local-test
yann@182
   132
	@rm -f $(BINDIR)/ct-ng
yann@182
   133
yann@296
   134
uninstall-lib: install-local-test
yann@182
   135
	@rm -rf $(LIBDIR)
yann@182
   136
yann@296
   137
uninstall-doc: install-local-test
yann@182
   138
	@rm -rf $(DOCDIR)
yann@298
   139
yann@298
   140
uninstall-man: install-local-test
yann@307
   141
	@rm -f $(MANDIR)/ct-ng.1{,.gz}