aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Makefile
blob: 6301c882b2d5a7eb9af1d8e6b972ce25b0a99512 (plain) (blame)
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
#
# %CopyrightBegin%
#
# Copyright Ericsson AB 1996-2013. All Rights Reserved.
#
# The contents of this file are subject to the Erlang Public License,
# Version 1.1, (the "License"); you may not use this file except in
# compliance with the License. You should have received a copy of the
# Erlang Public License along with this software. If not, it can be
# retrieved online at http://www.erlang.org/.
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
# the License for the specific language governing rights and limitations
# under the License.
#
# %CopyrightEnd%

include $(ERL_TOP)/make/target.mk
include $(ERL_TOP)/make/$(TARGET)/otp.mk


# These have to be built first
ERTS_APPLICATIONS = stdlib sasl kernel compiler

# Then these have to be build
ERLANG_APPLICATIONS = tools test_server common_test runtime_tools \
			inets xmerl edoc erl_docgen parsetools

# These are only build if -a is given to otp_build or make is used directly
ALL_ERLANG_APPLICATIONS = snmp otp_mibs erl_interface asn1 jinterface \
	          wx debugger reltool gs \
	          ic mnesia crypto orber os_mon syntax_tools \
	          public_key ssl observer odbc diameter \
	          cosTransactions cosEvent cosTime cosNotification \
	          cosProperty cosFileTransfer cosEventDomain et megaco webtool \
		  eunit ssh typer percept eldap dialyzer hipe

ifdef BUILD_ALL
  ERLANG_APPLICATIONS += $(ALL_ERLANG_APPLICATIONS)

# We use whildcard */ to figure out if there are any other applications
# in here.
  EXPECTED_APPLICATIONS := $(ERTS_APPLICATIONS) $(ERLANG_APPLICATIONS) \
	autom4te.cache
  EXTRA_APPLICATIONS += $(filter-out $(EXPECTED_APPLICATIONS),\
				$(subst /,,$(wildcard */)))
endif

ifdef BUILD_STATIC_LIBS
  SUB_DIRECTORIES = asn1 crypto
else
  ifdef BOOTSTRAP
    SUB_DIRECTORIES = \
      kernel stdlib compiler
  else
    ifdef SECONDARY_BOOTSTRAP
      SUB_DIRECTORIES = hipe parsetools asn1/src
    else
      ifdef TERTIARY_BOOTSTRAP
        SUB_DIRECTORIES = snmp sasl jinterface ic syntax_tools wx
      else # Not bootstrap build
        SUB_DIRECTORIES = $(ERTS_APPLICATIONS) \
			  $(ERLANG_APPLICATIONS) \
			  $(EXTRA_APPLICATIONS)
      endif
    endif
  endif
endif

# Any applications listed in SKIP-APPLICATIONS should be skipped
SKIP_FILE := $(wildcard SKIP-APPLICATIONS)
SKIP_APPLICATIONS := $(if $(SKIP_FILE),$(shell cat $(SKIP_FILE)))
SUB_DIRECTORIES := $(filter-out $(SKIP_APPLICATIONS),$(SUB_DIRECTORIES))

# ----------------------------------------------------------------------
include $(ERL_TOP)/make/otp_subdir.mk