Returns the Value of the environment variable
++ VarName, or DefaultValue if the environment variable
++ is undefined.
++
If Unicode file name encoding is in effect (see the erl manual
++ page), the strings (both VarName and
++ Value) may contain characters with codepoints > 255.
++
++
++
+
+ Return the process identifier of the emulator process
+
+diff --git a/lib/kernel/src/os.erl b/lib/kernel/src/os.erl
+index 187fd00..8aaf13b 100644
+--- a/lib/kernel/src/os.erl
++++ b/lib/kernel/src/os.erl
+@@ -26,7 +26,7 @@
+
+ %%% BIFs
+
+--export([getenv/0, getenv/1, getpid/0, putenv/2, timestamp/0, unsetenv/1]).
++-export([getenv/0, getenv/1, getenv/2, getpid/0, putenv/2, timestamp/0, unsetenv/1]).
+
+ -spec getenv() -> [string()].
+
+@@ -39,6 +39,19 @@ getenv() -> erlang:nif_error(undef).
+ getenv(_) ->
+ erlang:nif_error(undef).
+
++-spec getenv(VarName, DefaultValue) -> Value when
++ VarName :: string(),
++ DefaultValue :: string(),
++ Value :: string().
++
++getenv(VarName, DefaultValue) ->
++ case os:getenv(VarName) of
++ false ->
++ DefaultValue;
++ Value ->
++ Value
++ end.
++
+ -spec getpid() -> Value when
+ Value :: string().
+
From 918fdf26b715336be8386b8c865b32ac34d84535 Mon Sep 17 00:00:00 2001
From: Peter Lemenkov
Date: Mon, 1 Dec 2014 17:13:00 +0300
Subject: [PATCH 008/292] Disable SSLv3
See rhbz #1169375 for further details:
https://bugzilla.redhat.com/1169375
Signed-off-by: Peter Lemenkov
---
erlang.spec | 9 +-
...pport-for-SSLv3-protocol-because-it-.patch | 100 ++++++++++++++++++
2 files changed, 108 insertions(+), 1 deletion(-)
create mode 100644 otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
diff --git a/erlang.spec b/erlang.spec
index eff8714..66fdfd8 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -10,7 +10,7 @@
Name: erlang
Version: 17.3.4
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
@@ -74,6 +74,9 @@ Patch10: otp-0010-Split-off-webtool-dependency-from-tools.patch
# Fedora specific patch
# Introduce os:getenv/2
Patch11: otp-0011-Introduce-os-getenv-2.patch
+# Fedora specific patch
+# Patch removes support for SSLv3 protocol because it is proved
+Patch12: otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
# end of autogenerated patch tag list
BuildRequires: lksctp-tools-devel
@@ -904,6 +907,7 @@ Erlang mode for XEmacs (source lisp files).
%patch9 -p1 -b .Expose_NIF_version
%patch10 -p1 -b .Split_off_webtool_dependency_from_tools
%patch11 -p1 -b .Introduce_os_getenv_2
+%patch12 -p1 -b .Patch_removes_support_for_SSLv3_protocol_because_it_
# end of autogenerated prep patch list
# FIXME we should come up with a better solution
@@ -2224,6 +2228,9 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
+* Mon Dec 01 2014 Peter Lemenkov - 17.3.4-3
+- Disable SSLv3 (see rhbz #1169375)
+
* Mon Dec 01 2014 Peter Lemenkov - 17.3.4-2
- Backport useful os:getenv/2 from master (see https://github.com/erlang/otp/pull/535 )
diff --git a/otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch b/otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
new file mode 100644
index 0000000..584fa59
--- /dev/null
+++ b/otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
@@ -0,0 +1,100 @@
+From: Sergei Golovan
+Date: Sun, 30 Nov 2014 20:20:41 +0300
+Subject: [PATCH] Patch removes support for SSLv3 protocol because it is proved
+ to be insecure and nobody should use it anymore.
+
+
+diff --git a/lib/ssl/doc/src/ssl.xml b/lib/ssl/doc/src/ssl.xml
+index f14d0b8..3a768e9 100644
+--- a/lib/ssl/doc/src/ssl.xml
++++ b/lib/ssl/doc/src/ssl.xml
+@@ -123,7 +123,7 @@
+
+
Protocol that will be supported by started clients and
+ servers. If this option is not set it will default to all
+@@ -58,6 +58,9 @@
+ Note that this option may be overridden by the version option
+ to ssl:connect/[2,3] and ssl:listen/2.
+
++
For Debian GNU/Linux distribution the sslv3 protocol was
++ disabled due to its security issues.
++
Returns a string containing the erlang NIF version
-+ used by the runtime system. It will be on the form "<major ver>.<minor ver>".
-+
- otp_release
-
-
Returns a string containing the OTP release number of the
-diff --git a/erts/emulator/beam/erl_bif_info.c b/erts/emulator/beam/erl_bif_info.c
-index 6efe9d9..da38eea 100644
---- a/erts/emulator/beam/erl_bif_info.c
-+++ b/erts/emulator/beam/erl_bif_info.c
-@@ -27,6 +27,7 @@
- #include "erl_process.h"
- #include "error.h"
- #include "erl_driver.h"
-+#include "erl_nif.h"
- #include "bif.h"
- #include "big.h"
- #include "erl_version.h"
-@@ -2459,6 +2460,13 @@ BIF_RETTYPE system_info_1(BIF_ALIST_1)
- ERL_DRV_EXTENDED_MINOR_VERSION);
- hp = HAlloc(BIF_P, 2*n);
- BIF_RET(buf_to_intlist(&hp, buf, n, NIL));
-+ } else if (ERTS_IS_ATOM_STR("nif_version", BIF_ARG_1)) {
-+ char buf[42];
-+ int n = erts_snprintf(buf, 42, "%d.%d",
-+ ERL_NIF_MAJOR_VERSION,
-+ ERL_NIF_MINOR_VERSION);
-+ hp = HAlloc(BIF_P, 2*n);
-+ BIF_RET(buf_to_intlist(&hp, buf, n, NIL));
- } else if (ERTS_IS_ATOM_STR("smp_support", BIF_ARG_1)) {
- #ifdef ERTS_SMP
- BIF_RET(am_true);
-diff --git a/erts/emulator/test/driver_SUITE.erl b/erts/emulator/test/driver_SUITE.erl
-index 336b618..081789f 100644
---- a/erts/emulator/test/driver_SUITE.erl
-+++ b/erts/emulator/test/driver_SUITE.erl
-@@ -1199,8 +1199,8 @@ check_si_res(["sched_thrs", Value]) ->
- ?line Value = integer_to_list(erlang:system_info(schedulers));
-
- %% Data added in 3rd version of driver_system_info() (driver version 1.5)
--check_si_res(["emu_nif_vsn", _Value]) ->
-- true;
-+check_si_res(["emu_nif_vsn", Value]) ->
-+ ?line Value = erlang:system_info(nif_version);
-
- %% Data added in 4th version of driver_system_info() (driver version 3.1)
- check_si_res(["dirty_sched", _Value]) ->
-diff --git a/erts/preloaded/src/erlang.erl b/erts/preloaded/src/erlang.erl
-index 98d7a94..de6a773 100644
---- a/erts/preloaded/src/erlang.erl
-+++ b/erts/preloaded/src/erlang.erl
-@@ -2251,6 +2251,7 @@ tuple_to_list(_Tuple) ->
- (modified_timing_level) -> integer() | undefined;
- (multi_scheduling) -> disabled | blocked | enabled;
- (multi_scheduling_blockers) -> [PID :: pid()];
-+ (nif_version) -> string();
- (otp_release) -> string();
- (port_count) -> non_neg_integer();
- (port_limit) -> pos_integer();
-diff --git a/lib/runtime_tools/src/system_information.erl b/lib/runtime_tools/src/system_information.erl
-index f541d6e..04cc33e 100644
---- a/lib/runtime_tools/src/system_information.erl
-+++ b/lib/runtime_tools/src/system_information.erl
-@@ -371,6 +371,7 @@ erlang_system_info() ->
- logical_processors_online,
- logical_processors_available,
- driver_version,
-+ nif_version,
- emu_args,
- ethread_info,
- beam_jump_table,
-diff --git a/lib/runtime_tools/test/system_information_SUITE_data/information_test_report.dat b/lib/runtime_tools/test/system_information_SUITE_data/information_test_report.dat
-index 1893837..bdc510e 100644
---- a/lib/runtime_tools/test/system_information_SUITE_data/information_test_report.dat
-+++ b/lib/runtime_tools/test/system_information_SUITE_data/information_test_report.dat
-@@ -9720,6 +9720,7 @@
- {logical_processors_online,4},
- {logical_processors_available,4},
- {driver_version,"2.1"},
-+ {nif_version,"1.1"},
- {taints,[]}]},
- {erts_compile_info,
- [{ldflags,[]},
diff --git a/otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch b/otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
similarity index 98%
rename from otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
rename to otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
index 584fa59..fa55663 100644
--- a/otp-0012-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
+++ b/otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Patch removes support for SSLv3 protocol because it is proved
diff --git a/lib/ssl/doc/src/ssl.xml b/lib/ssl/doc/src/ssl.xml
-index f14d0b8..3a768e9 100644
+index b53344e..b245621 100644
--- a/lib/ssl/doc/src/ssl.xml
+++ b/lib/ssl/doc/src/ssl.xml
@@ -123,7 +123,7 @@
@@ -45,10 +45,10 @@ index 43cb393..ff12e04 100644
]]>
diff --git a/lib/ssl/src/ssl_internal.hrl b/lib/ssl/src/ssl_internal.hrl
-index 85724de..14013a4 100644
+index 75efb64..155fa81 100644
--- a/lib/ssl/src/ssl_internal.hrl
+++ b/lib/ssl/src/ssl_internal.hrl
-@@ -64,8 +64,8 @@
+@@ -67,8 +67,8 @@
-define(TRUE, 0).
-define(FALSE, 1).
diff --git a/sources b/sources
index 6327b7c..b22e8a6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-81aa75b5613b7db6f3761f848695e816 otp-OTP-17.3.4.tar.gz
+0d06e7d3802d63992535116e4d37c1a4 otp-OTP-17.4.tar.gz
From e58f762146d3f46db7d10793befb73531bb42b33 Mon Sep 17 00:00:00 2001
From: Kalev Lember
Date: Sat, 2 May 2015 13:29:58 +0200
Subject: [PATCH 010/292] Rebuilt for GCC 5 C++11 ABI change
---
erlang.spec | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/erlang.spec b/erlang.spec
index 6892e02..a8f71c0 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -10,7 +10,7 @@
Name: erlang
Version: 17.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
@@ -2216,6 +2216,9 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
+* Sat May 02 2015 Kalev Lember - 17.4-2
+- Rebuilt for GCC 5 C++11 ABI change
+
* Fri Dec 12 2014 Peter Lemenkov - 17.4-1
- Ver. 17.4
From 2238368d444f0b33ffb81f5a3524d0ffa045f999 Mon Sep 17 00:00:00 2001
From: Dennis Gilmore
Date: Wed, 17 Jun 2015 05:34:38 +0000
Subject: [PATCH 011/292] - Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
---
erlang.spec | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/erlang.spec b/erlang.spec
index a8f71c0..763da02 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -10,7 +10,7 @@
Name: erlang
Version: 17.4
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
@@ -2216,6 +2216,9 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
+* Wed Jun 17 2015 Fedora Release Engineering - 17.4-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
* Sat May 02 2015 Kalev Lember - 17.4-2
- Rebuilt for GCC 5 C++11 ABI change
From 654b879bc09027e62ed7d66451d4da7af53adccb Mon Sep 17 00:00:00 2001
From: John Eckersberg
Date: Wed, 5 Aug 2015 22:11:41 -0400
Subject: [PATCH 012/292] Add patch for CVE-2015-2774 - TLS-1.0 POODLE
vulnerability (rhbz#1206712)
---
erlang.spec | 10 +-
...ding-check-for-TLS-1.0-and-provide-b.patch | 576 ++++++++++++++++++
2 files changed, 585 insertions(+), 1 deletion(-)
create mode 100644 otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch
diff --git a/erlang.spec b/erlang.spec
index 763da02..6f7bac6 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -10,7 +10,7 @@
Name: erlang
Version: 17.4
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
@@ -70,6 +70,9 @@ Patch8: otp-0008-Introduce-os-getenv-2.patch
Patch9: otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
# end of autogenerated patch tag list
+# https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2015-2774
+Patch10: otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch
+
BuildRequires: lksctp-tools-devel
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
@@ -898,6 +901,8 @@ Erlang mode for XEmacs (source lisp files).
%patch9 -p1 -b .Patch_removes_support_for_SSLv3_protocol_because_it_
# end of autogenerated prep patch list
+%patch10 -p1
+
# FIXME we should come up with a better solution
# remove shipped zlib sources
#rm -f erts/emulator/zlib/*.[ch]
@@ -2216,6 +2221,9 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
+* Wed Aug 5 2015 John Eckersberg - 17.4-4
+- Add patch for CVE-2015-2774 - TLS-1.0 POODLE vulnerability (rhbz#1206712)
+
* Wed Jun 17 2015 Fedora Release Engineering - 17.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
diff --git a/otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch b/otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch
new file mode 100644
index 0000000..04dd246
--- /dev/null
+++ b/otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch
@@ -0,0 +1,576 @@
+diff -Naur otp-OTP-17.4.orig/lib/ssl/doc/src/ssl.xml otp-OTP-17.4/lib/ssl/doc/src/ssl.xml
+--- otp-OTP-17.4.orig/lib/ssl/doc/src/ssl.xml 2015-08-05 16:52:39.988500514 -0400
++++ otp-OTP-17.4/lib/ssl/doc/src/ssl.xml 2015-08-05 16:52:50.478441422 -0400
+@@ -4,7 +4,7 @@
+
+
+
+- 19992014
++ 19992015
+ Ericsson AB. All Rights Reserved.
+
+
+@@ -348,11 +348,23 @@
+
+
+
++ {padding_check, boolean()}
++
++
This option only affects TLS-1.0 connections.
++ If set to false it disables the block cipher padding check
++ to be able to interoperate with legacy software.
++
++
++
Using this option makes TLS vulnerable to
++ the Poodle attack
Options described here are client specific or has a slightly different
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/dtls_record.erl otp-OTP-17.4/lib/ssl/src/dtls_record.erl
+--- otp-OTP-17.4.orig/lib/ssl/src/dtls_record.erl 2015-08-05 16:52:39.989500508 -0400
++++ otp-OTP-17.4/lib/ssl/src/dtls_record.erl 2015-08-05 16:52:50.478441422 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2013-2014. All Rights Reserved.
++%% Copyright Ericsson AB 2013-2015. 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
+@@ -146,7 +146,7 @@
+ = ConnnectionStates0) ->
+ CompressAlg = SecParams#security_parameters.compression_algorithm,
+ {PlainFragment, Mac, ReadState1} = ssl_record:decipher(dtls_v1:corresponding_tls_version(Version),
+- CipherFragment, ReadState0),
++ CipherFragment, ReadState0, true),
+ MacHash = calc_mac_hash(ReadState1, Type, Version, Epoch, Seq, PlainFragment),
+ case ssl_record:is_correct_mac(Mac, MacHash) of
+ true ->
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/ssl_cipher.erl otp-OTP-17.4/lib/ssl/src/ssl_cipher.erl
+--- otp-OTP-17.4.orig/lib/ssl/src/ssl_cipher.erl 2015-08-05 16:52:39.989500508 -0400
++++ otp-OTP-17.4/lib/ssl/src/ssl_cipher.erl 2015-08-05 16:52:50.479441417 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2007-2014. All Rights Reserved.
++%% Copyright Ericsson AB 2007-2015. 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
+@@ -33,8 +33,7 @@
+ -include_lib("public_key/include/public_key.hrl").
+
+ -export([security_parameters/2, security_parameters/3, suite_definition/1,
+- decipher/5, cipher/5,
+- suite/1, suites/1, all_suites/1,
++ decipher/6, cipher/5, suite/1, suites/1, all_suites/1,
+ ec_keyed_suites/0, anonymous_suites/0, psk_suites/1, srp_suites/0,
+ openssl_suite/1, openssl_suite_name/1, filter/2, filter_suites/1,
+ hash_algorithm/1, sign_algorithm/1, is_acceptable_hash/2]).
+@@ -143,17 +142,18 @@
+ {T, CS0#cipher_state{iv=NextIV}}.
+
+ %%--------------------------------------------------------------------
+--spec decipher(cipher_enum(), integer(), #cipher_state{}, binary(), ssl_record:ssl_version()) ->
++-spec decipher(cipher_enum(), integer(), #cipher_state{}, binary(),
++ ssl_record:ssl_version(), boolean()) ->
+ {binary(), binary(), #cipher_state{}} | #alert{}.
+ %%
+ %% Description: Decrypts the data and the MAC using cipher described
+ %% by cipher_enum() and updating the cipher state.
+ %%-------------------------------------------------------------------
+-decipher(?NULL, _HashSz, CipherState, Fragment, _) ->
++decipher(?NULL, _HashSz, CipherState, Fragment, _, _) ->
+ {Fragment, <<>>, CipherState};
+-decipher(?RC4, HashSz, CipherState, Fragment, _) ->
++decipher(?RC4, HashSz, CipherState, Fragment, _, _) ->
+ State0 = case CipherState#cipher_state.state of
+- undefined -> crypto:stream_init(rc4, CipherState#cipher_state.key);
++ undefined -> crypto:stream_init(rc4, CipherState#cipher_state.key);
+ S -> S
+ end,
+ try crypto:stream_decrypt(State0, Fragment) of
+@@ -171,23 +171,23 @@
+ ?ALERT_REC(?FATAL, ?BAD_RECORD_MAC)
+ end;
+
+-decipher(?DES, HashSz, CipherState, Fragment, Version) ->
++decipher(?DES, HashSz, CipherState, Fragment, Version, PaddingCheck) ->
+ block_decipher(fun(Key, IV, T) ->
+ crypto:block_decrypt(des_cbc, Key, IV, T)
+- end, CipherState, HashSz, Fragment, Version);
+-decipher(?'3DES', HashSz, CipherState, Fragment, Version) ->
++ end, CipherState, HashSz, Fragment, Version, PaddingCheck);
++decipher(?'3DES', HashSz, CipherState, Fragment, Version, PaddingCheck) ->
+ block_decipher(fun(<>, IV, T) ->
+ crypto:block_decrypt(des3_cbc, [K1, K2, K3], IV, T)
+- end, CipherState, HashSz, Fragment, Version);
+-decipher(?AES, HashSz, CipherState, Fragment, Version) ->
++ end, CipherState, HashSz, Fragment, Version, PaddingCheck);
++decipher(?AES, HashSz, CipherState, Fragment, Version, PaddingCheck) ->
+ block_decipher(fun(Key, IV, T) when byte_size(Key) =:= 16 ->
+ crypto:block_decrypt(aes_cbc128, Key, IV, T);
+ (Key, IV, T) when byte_size(Key) =:= 32 ->
+ crypto:block_decrypt(aes_cbc256, Key, IV, T)
+- end, CipherState, HashSz, Fragment, Version).
++ end, CipherState, HashSz, Fragment, Version, PaddingCheck).
+
+ block_decipher(Fun, #cipher_state{key=Key, iv=IV} = CipherState0,
+- HashSz, Fragment, Version) ->
++ HashSz, Fragment, Version, PaddingCheck) ->
+ try
+ Text = Fun(Key, IV, Fragment),
+ NextIV = next_iv(Fragment, IV),
+@@ -195,7 +195,7 @@
+ Content = GBC#generic_block_cipher.content,
+ Mac = GBC#generic_block_cipher.mac,
+ CipherState1 = CipherState0#cipher_state{iv=GBC#generic_block_cipher.next_iv},
+- case is_correct_padding(GBC, Version) of
++ case is_correct_padding(GBC, Version, PaddingCheck) of
+ true ->
+ {Content, Mac, CipherState1};
+ false ->
+@@ -1288,16 +1288,18 @@
+ #generic_stream_cipher{content=Content,
+ mac=Mac}.
+
+-%% For interoperability reasons we do not check the padding content in
+-%% SSL 3.0 and TLS 1.0 as it is not strictly required and breaks
+-%% interopability with for instance Google.
+ is_correct_padding(#generic_block_cipher{padding_length = Len,
+- padding = Padding}, {3, N})
+- when N == 0; N == 1 ->
+- Len == byte_size(Padding);
+-%% Padding must be check in TLS 1.1 and after
++ padding = Padding}, {3, 0}, _) ->
++ Len == byte_size(Padding); %% Only length check is done in SSL 3.0 spec
++%% For interoperability reasons it is possible to disable
++%% the padding check when using TLS 1.0, as it is not strictly required
++%% in the spec (only recommended), howerver this makes TLS 1.0 vunrable to the Poodle attack
++%% so by default this clause will not match
++is_correct_padding(GenBlockCipher, {3, 1}, false) ->
++ is_correct_padding(GenBlockCipher, {3, 0}, false);
++%% Padding must be checked in TLS 1.1 and after
+ is_correct_padding(#generic_block_cipher{padding_length = Len,
+- padding = Padding}, _) ->
++ padding = Padding}, _, _) ->
+ Len == byte_size(Padding) andalso
+ list_to_binary(lists:duplicate(Len, Len)) == Padding.
+
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/ssl.erl otp-OTP-17.4/lib/ssl/src/ssl.erl
+--- otp-OTP-17.4.orig/lib/ssl/src/ssl.erl 2015-08-05 16:52:39.989500508 -0400
++++ otp-OTP-17.4/lib/ssl/src/ssl.erl 2015-08-05 16:52:50.479441417 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 1999-2014. All Rights Reserved.
++%% Copyright Ericsson AB 1999-2015. 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
+@@ -656,7 +656,8 @@
+ log_alert = handle_option(log_alert, Opts, true),
+ server_name_indication = handle_option(server_name_indication, Opts, undefined),
+ honor_cipher_order = handle_option(honor_cipher_order, Opts, false),
+- protocol = proplists:get_value(protocol, Opts, tls)
++ protocol = proplists:get_value(protocol, Opts, tls),
++ padding_check = proplists:get_value(padding_check, Opts, true)
+ },
+
+ CbInfo = proplists:get_value(cb_info, Opts, {gen_tcp, tcp, tcp_closed, tcp_error}),
+@@ -669,7 +670,7 @@
+ cb_info, renegotiate_at, secure_renegotiate, hibernate_after,
+ erl_dist, next_protocols_advertised,
+ client_preferred_next_protocols, log_alert,
+- server_name_indication, honor_cipher_order],
++ server_name_indication, honor_cipher_order, padding_check],
+
+ SockOpts = lists:foldl(fun(Key, PropList) ->
+ proplists:delete(Key, PropList)
+@@ -847,6 +848,8 @@
+ undefined;
+ validate_option(honor_cipher_order, Value) when is_boolean(Value) ->
+ Value;
++validate_option(padding_check, Value) when is_boolean(Value) ->
++ Value;
+ validate_option(Opt, Value) ->
+ throw({error, {options, {Opt, Value}}}).
+
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/ssl_internal.hrl otp-OTP-17.4/lib/ssl/src/ssl_internal.hrl
+--- otp-OTP-17.4.orig/lib/ssl/src/ssl_internal.hrl 2015-08-05 16:52:39.990500503 -0400
++++ otp-OTP-17.4/lib/ssl/src/ssl_internal.hrl 2015-08-05 16:52:50.479441417 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2007-2014. All Rights Reserved.
++%% Copyright Ericsson AB 2007-2015. 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
+@@ -117,7 +117,8 @@
+ server_name_indication = undefined,
+ %% Should the server prefer its own cipher order over the one provided by
+ %% the client?
+- honor_cipher_order = false
++ honor_cipher_order = false,
++ padding_check = true
+ }).
+
+ -record(socket_options,
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/ssl_record.erl otp-OTP-17.4/lib/ssl/src/ssl_record.erl
+--- otp-OTP-17.4.orig/lib/ssl/src/ssl_record.erl 2015-08-05 16:52:39.989500508 -0400
++++ otp-OTP-17.4/lib/ssl/src/ssl_record.erl 2015-08-05 16:52:50.479441417 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2013-2014. All Rights Reserved.
++%% Copyright Ericsson AB 2013-2015. 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
+@@ -48,7 +48,7 @@
+ -export([compress/3, uncompress/3, compressions/0]).
+
+ %% Payload encryption/decryption
+--export([cipher/4, decipher/3, is_correct_mac/2]).
++-export([cipher/4, decipher/4, is_correct_mac/2]).
+
+ -export_type([ssl_version/0, ssl_atom_version/0]).
+
+@@ -376,8 +376,9 @@
+ {CipherFragment, CipherS1} =
+ ssl_cipher:cipher(BulkCipherAlgo, CipherS0, MacHash, Fragment, Version),
+ {CipherFragment, WriteState0#connection_state{cipher_state = CipherS1}}.
++
+ %%--------------------------------------------------------------------
+--spec decipher(ssl_version(), binary(), #connection_state{}) -> {binary(), binary(), #connection_state{}} | #alert{}.
++-spec decipher(ssl_version(), binary(), #connection_state{}, boolean()) -> {binary(), binary(), #connection_state{}} | #alert{}.
+ %%
+ %% Description: Payload decryption
+ %%--------------------------------------------------------------------
+@@ -387,8 +388,8 @@
+ BulkCipherAlgo,
+ hash_size = HashSz},
+ cipher_state = CipherS0
+- } = ReadState) ->
+- case ssl_cipher:decipher(BulkCipherAlgo, HashSz, CipherS0, CipherFragment, Version) of
++ } = ReadState, PaddingCheck) ->
++ case ssl_cipher:decipher(BulkCipherAlgo, HashSz, CipherS0, CipherFragment, Version, PaddingCheck) of
+ {PlainFragment, Mac, CipherS1} ->
+ CS1 = ReadState#connection_state{cipher_state = CipherS1},
+ {PlainFragment, Mac, CS1};
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/tls_connection.erl otp-OTP-17.4/lib/ssl/src/tls_connection.erl
+--- otp-OTP-17.4.orig/lib/ssl/src/tls_connection.erl 2015-08-05 16:52:39.990500503 -0400
++++ otp-OTP-17.4/lib/ssl/src/tls_connection.erl 2015-08-05 16:52:50.479441417 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2007-2014. All Rights Reserved.
++%% Copyright Ericsson AB 2007-2015. 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
+@@ -482,8 +482,9 @@
+ next_record(#state{protocol_buffers =
+ #protocol_buffers{tls_packets = [], tls_cipher_texts = [CT | Rest]}
+ = Buffers,
+- connection_states = ConnStates0} = State) ->
+- case tls_record:decode_cipher_text(CT, ConnStates0) of
++ connection_states = ConnStates0,
++ ssl_options = #ssl_options{padding_check = Check}} = State) ->
++ case tls_record:decode_cipher_text(CT, ConnStates0, Check) of
+ {Plain, ConnStates} ->
+ {Plain, State#state{protocol_buffers =
+ Buffers#protocol_buffers{tls_cipher_texts = Rest},
+diff -Naur otp-OTP-17.4.orig/lib/ssl/src/tls_record.erl otp-OTP-17.4/lib/ssl/src/tls_record.erl
+--- otp-OTP-17.4.orig/lib/ssl/src/tls_record.erl 2015-08-05 16:52:39.990500503 -0400
++++ otp-OTP-17.4/lib/ssl/src/tls_record.erl 2015-08-05 16:52:50.480441411 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2007-2014. All Rights Reserved.
++%% Copyright Ericsson AB 2007-2015. 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
+@@ -34,7 +34,7 @@
+ -export([get_tls_records/2]).
+
+ %% Decoding
+--export([decode_cipher_text/2]).
++-export([decode_cipher_text/3]).
+
+ %% Encoding
+ -export([encode_plain_text/4]).
+@@ -142,19 +142,21 @@
+ {CipherText, ConnectionStates#connection_states{current_write = WriteState#connection_state{sequence_number = Seq +1}}}.
+
+ %%--------------------------------------------------------------------
+--spec decode_cipher_text(#ssl_tls{}, #connection_states{}) ->
++-spec decode_cipher_text(#ssl_tls{}, #connection_states{}, boolean()) ->
+ {#ssl_tls{}, #connection_states{}}| #alert{}.
+ %%
+ %% Description: Decode cipher text
+ %%--------------------------------------------------------------------
+ decode_cipher_text(#ssl_tls{type = Type, version = Version,
+- fragment = CipherFragment} = CipherText, ConnnectionStates0) ->
+- ReadState0 = ConnnectionStates0#connection_states.current_read,
+- #connection_state{compression_state = CompressionS0,
+- sequence_number = Seq,
+- security_parameters = SecParams} = ReadState0,
+- CompressAlg = SecParams#security_parameters.compression_algorithm,
+- case ssl_record:decipher(Version, CipherFragment, ReadState0) of
++ fragment = CipherFragment} = CipherText,
++ #connection_states{current_read =
++ #connection_state{
++ compression_state = CompressionS0,
++ sequence_number = Seq,
++ security_parameters=
++ #security_parameters{compression_algorithm = CompressAlg}
++ } = ReadState0} = ConnnectionStates0, PaddingCheck) ->
++ case ssl_record:decipher(Version, CipherFragment, ReadState0, PaddingCheck) of
+ {PlainFragment, Mac, ReadState1} ->
+ MacHash = calc_mac_hash(Type, Version, PlainFragment, ReadState1),
+ case ssl_record:is_correct_mac(Mac, MacHash) of
+diff -Naur otp-OTP-17.4.orig/lib/ssl/test/ssl_cipher_SUITE.erl otp-OTP-17.4/lib/ssl/test/ssl_cipher_SUITE.erl
+--- otp-OTP-17.4.orig/lib/ssl/test/ssl_cipher_SUITE.erl 2015-08-05 16:52:39.990500503 -0400
++++ otp-OTP-17.4/lib/ssl/test/ssl_cipher_SUITE.erl 2015-08-05 16:52:50.480441411 -0400
+@@ -1,7 +1,7 @@
+ %%
+ %% %CopyrightBegin%
+ %%
+-%% Copyright Ericsson AB 2008-2013. All Rights Reserved.
++%% Copyright Ericsson AB 2008-2015. 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
+@@ -38,7 +38,7 @@
+ suite() -> [{ct_hooks,[ts_install_cth]}].
+
+ all() ->
+- [aes_decipher_good, aes_decipher_good_tls11, aes_decipher_fail, aes_decipher_fail_tls11].
++ [aes_decipher_good, aes_decipher_fail, padding_test].
+
+ groups() ->
+ [].
+@@ -73,93 +73,123 @@
+ %% Test Cases --------------------------------------------------------
+ %%--------------------------------------------------------------------
+ aes_decipher_good() ->
+- [{doc,"Decipher a known cryptotext."}].
++ [{doc,"Decipher a known cryptotext using a correct key"}].
+
+ aes_decipher_good(Config) when is_list(Config) ->
+ HashSz = 32,
+- CipherState = #cipher_state{iv = <<59,201,85,117,188,206,224,136,5,109,46,70,104,79,4,9>>,
+- key = <<72,196,247,97,62,213,222,109,210,204,217,186,172,184,197,148>>},
+- Fragment = <<220,193,179,139,171,33,143,245,202,47,123,251,13,232,114,8,
+- 190,162,74,31,186,227,119,155,94,74,119,79,169,193,240,160,
+- 198,181,81,19,98,162,213,228,74,224,253,168,156,59,195,122,
+- 108,101,107,242,20,15,169,150,163,107,101,94,93,104,241,165>>,
+- Content = <<183,139,16,132,10,209,67,86,168,100,61,217,145,57,36,56, "HELLO\n">>,
+- Mac = <<71,136,212,107,223,200,70,232,127,116,148,205,232,35,158,113,237,174,15,217,192,168,35,8,6,107,107,233,25,174,90,111>>,
+- Version = {3,0},
+- {Content, Mac, _} = ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version),
+- Version1 = {3,1},
+- {Content, Mac, _} = ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version1),
+- ok.
+-
+-%%--------------------------------------------------------------------
+-
+-aes_decipher_good_tls11() ->
+- [{doc,"Decipher a known TLS 1.1 cryptotext."}].
+-
+-%% the fragment is actuall a TLS 1.1 record, with
+-%% Version = TLS 1.1, we get the correct NextIV in #cipher_state
+-aes_decipher_good_tls11(Config) when is_list(Config) ->
+- HashSz = 32,
+- CipherState = #cipher_state{iv = <<59,201,85,117,188,206,224,136,5,109,46,70,104,79,4,9>>,
+- key = <<72,196,247,97,62,213,222,109,210,204,217,186,172,184,197,148>>},
+- Fragment = <<220,193,179,139,171,33,143,245,202,47,123,251,13,232,114,8,
+- 190,162,74,31,186,227,119,155,94,74,119,79,169,193,240,160,
+- 198,181,81,19,98,162,213,228,74,224,253,168,156,59,195,122,
+- 108,101,107,242,20,15,169,150,163,107,101,94,93,104,241,165>>,
+- Content = <<"HELLO\n">>,
+- NextIV = <<183,139,16,132,10,209,67,86,168,100,61,217,145,57,36,56>>,
+- Mac = <<71,136,212,107,223,200,70,232,127,116,148,205,232,35,158,113,237,174,15,217,192,168,35,8,6,107,107,233,25,174,90,111>>,
+- Version = {3,2},
+- {Content, Mac, #cipher_state{iv = NextIV}} = ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version),
+- Version1 = {3,2},
+- {Content, Mac, #cipher_state{iv = NextIV}} = ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version1),
+- ok.
++ CipherState = correct_cipher_state(),
++ decipher_check_good(HashSz, CipherState, {3,0}),
++ decipher_check_good(HashSz, CipherState, {3,1}),
++ decipher_check_good(HashSz, CipherState, {3,2}),
++ decipher_check_good(HashSz, CipherState, {3,3}).
+
+ %%--------------------------------------------------------------------
+
+ aes_decipher_fail() ->
+- [{doc,"Decipher a known cryptotext."}].
++ [{doc,"Decipher a known cryptotext using a incorrect key"}].
+
+-%% same as above, last byte of key replaced
+ aes_decipher_fail(Config) when is_list(Config) ->
+ HashSz = 32,
+- CipherState = #cipher_state{iv = <<59,201,85,117,188,206,224,136,5,109,46,70,104,79,4,9>>,
+- key = <<72,196,247,97,62,213,222,109,210,204,217,186,172,184,197,254>>},
+- Fragment = <<220,193,179,139,171,33,143,245,202,47,123,251,13,232,114,8,
+- 190,162,74,31,186,227,119,155,94,74,119,79,169,193,240,160,
+- 198,181,81,19,98,162,213,228,74,224,253,168,156,59,195,122,
+- 108,101,107,242,20,15,169,150,163,107,101,94,93,104,241,165>>,
+- Version = {3,0},
+- {Content, Mac, _} = ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version),
+- 32 = byte_size(Content),
+- 32 = byte_size(Mac),
+- Version1 = {3,1},
+- {Content1, Mac1, _} = ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version1),
+- 32 = byte_size(Content1),
+- 32 = byte_size(Mac1),
+- ok.
+
+-%%--------------------------------------------------------------------
+-
+-aes_decipher_fail_tls11() ->
+- [{doc,"Decipher a known TLS 1.1 cryptotext."}].
+-
+-%% same as above, last byte of key replaced
+-%% stricter padding checks in TLS 1.1 mean we get an alert instead
+-aes_decipher_fail_tls11(Config) when is_list(Config) ->
+- HashSz = 32,
+- CipherState = #cipher_state{iv = <<59,201,85,117,188,206,224,136,5,109,46,70,104,79,4,9>>,
+- key = <<72,196,247,97,62,213,222,109,210,204,217,186,172,184,197,254>>},
+- Fragment = <<220,193,179,139,171,33,143,245,202,47,123,251,13,232,114,8,
+- 190,162,74,31,186,227,119,155,94,74,119,79,169,193,240,160,
+- 198,181,81,19,98,162,213,228,74,224,253,168,156,59,195,122,
+- 108,101,107,242,20,15,169,150,163,107,101,94,93,104,241,165>>,
+- Version = {3,2},
+- #alert{level = ?FATAL, description = ?BAD_RECORD_MAC} =
+- ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version),
+- Version1 = {3,3},
+- #alert{level = ?FATAL, description = ?BAD_RECORD_MAC} =
+- ssl_cipher:decipher(?AES, HashSz, CipherState, Fragment, Version1),
+- ok.
+-
+-%%--------------------------------------------------------------------
++ CipherState = incorrect_cipher_state(),
++ decipher_check_fail(HashSz, CipherState, {3,0}),
++ decipher_check_fail(HashSz, CipherState, {3,1}),
++ decipher_check_fail(HashSz, CipherState, {3,2}),
++ decipher_check_fail(HashSz, CipherState, {3,3}).
++
++%%--------------------------------------------------------------------
++padding_test(Config) when is_list(Config) ->
++ HashSz = 16,
++ CipherState = correct_cipher_state(),
++ pad_test(HashSz, CipherState, {3,0}),
++ pad_test(HashSz, CipherState, {3,1}),
++ pad_test(HashSz, CipherState, {3,2}),
++ pad_test(HashSz, CipherState, {3,3}).
++
++%%--------------------------------------------------------------------
++% Internal functions --------------------------------------------------------
++%%--------------------------------------------------------------------
++decipher_check_good(HashSz, CipherState, Version) ->
++ {Content, NextIV, Mac} = content_nextiv_mac(Version),
++ {Content, Mac, #cipher_state{iv = NextIV}} =
++ ssl_cipher:decipher(?AES, HashSz, CipherState, aes_fragment(Version), Version, true).
++
++decipher_check_fail(HashSz, CipherState, Version) ->
++ {Content, NextIV, Mac} = content_nextiv_mac(Version),
++ true = {Content, Mac, #cipher_state{iv = NextIV}} =/=
++ ssl_cipher:decipher(?AES, HashSz, CipherState, aes_fragment(Version), Version, true).
++
++pad_test(HashSz, CipherState, {3,0} = Version) ->
++ %% 3.0 does not have padding test
++ {Content, NextIV, Mac} = badpad_content_nextiv_mac(Version),
++ {Content, Mac, #cipher_state{iv = NextIV}} =
++ ssl_cipher:decipher(?AES, HashSz, CipherState, badpad_aes_fragment({3,0}), {3,0}, true),
++ {Content, Mac, #cipher_state{iv = NextIV}} =
++ ssl_cipher:decipher(?AES, HashSz, CipherState, badpad_aes_fragment({3,0}), {3,0}, false);
++pad_test(HashSz, CipherState, {3,1} = Version) ->
++ %% 3.1 should have padding test, but may be disabled
++ {Content, NextIV, Mac} = badpad_content_nextiv_mac(Version),
++ BadCont = badpad_content(Content),
++ {Content, Mac, #cipher_state{iv = NextIV}} =
++ ssl_cipher:decipher(?AES, HashSz, CipherState, badpad_aes_fragment({3,1}) , {3,1}, false),
++ {BadCont, Mac, #cipher_state{iv = NextIV}} =
++ ssl_cipher:decipher(?AES, HashSz, CipherState, badpad_aes_fragment({3,1}), {3,1}, true);
++pad_test(HashSz, CipherState, Version) ->
++ %% 3.2 and 3.3 must have padding test
++ {Content, NextIV, Mac} = badpad_content_nextiv_mac(Version),
++ BadCont = badpad_content(Content),
++ {BadCont, Mac, #cipher_state{iv = NextIV}} = ssl_cipher:decipher(?AES, HashSz, CipherState,
++ badpad_aes_fragment(Version), Version, false),
++ {BadCont, Mac, #cipher_state{iv = NextIV}} = ssl_cipher:decipher(?AES, HashSz, CipherState,
++ badpad_aes_fragment(Version), Version, true).
++
++aes_fragment({3,N}) when N == 0; N == 1->
++ <<197,9,6,109,242,87,80,154,85,250,110,81,119,95,65,185,53,206,216,153,246,169,
++ 119,177,178,238,248,174,253,220,242,81,33,0,177,251,91,44,247,53,183,198,165,
++ 63,20,194,159,107>>;
++
++aes_fragment(_) ->
++ <<220,193,179,139,171,33,143,245,202,47,123,251,13,232,114,8,
++ 190,162,74,31,186,227,119,155,94,74,119,79,169,193,240,160,
++ 198,181,81,19,98,162,213,228,74,224,253,168,156,59,195,122,
++ 108,101,107,242,20,15,169,150,163,107,101,94,93,104,241,165>>.
++
++badpad_aes_fragment({3,N}) when N == 0; N == 1 ->
++ <<186,139,125,10,118,21,26,248,120,108,193,104,87,118,145,79,225,55,228,10,105,
++ 30,190,37,1,88,139,243,210,99,65,41>>;
++badpad_aes_fragment(_) ->
++ <<137,31,14,77,228,80,76,103,183,125,55,250,68,190,123,131,117,23,229,180,207,
++ 94,121,137,117,157,109,99,113,61,190,138,131,229,201,120,142,179,172,48,77,
++ 234,19,240,33,38,91,93>>.
++
++content_nextiv_mac({3,N}) when N == 0; N == 1 ->
++ {<<"HELLO\n">>,
++ <<33,0, 177,251, 91,44, 247,53, 183,198, 165,63, 20,194, 159,107>>,
++ <<71,136,212,107,223,200,70,232,127,116,148,205,232,35,158,113,237,174,15,217,192,168,35,8,6,107,107,233,25,174,90,111>>};
++content_nextiv_mac(_) ->
++ {<<"HELLO\n">>,
++ <<183,139,16,132,10,209,67,86,168,100,61,217,145,57,36,56>>,
++ <<71,136,212,107,223,200,70,232,127,116,148,205,232,35,158,113,237,174,15,217,192,168,35,8,6,107,107,233,25,174,90,111>>}.
++
++badpad_content_nextiv_mac({3,N}) when N == 0; N == 1 ->
++ {<<"HELLO\n">>,
++ <<225,55,228,10,105,30,190,37,1,88,139,243,210,99,65,41>>,
++ <<183,139,16,132,10,209,67,86,168,100,61,217,145,57,36,56>>
++ };
++badpad_content_nextiv_mac(_) ->
++ {<<"HELLO\n">>,
++ <<133,211,45,189,179,229,56,86,11,178,239,159,14,160,253,140>>,
++ <<183,139,16,132,10,209,67,86,168,100,61,217,145,57,36,56>>
++ }.
++
++badpad_content(Content) ->
++ %% BadContent will fail mac test
++ <<16#F0, Content/binary>>.
++
++correct_cipher_state() ->
++ #cipher_state{iv = <<59,201,85,117,188,206,224,136,5,109,46,70,104,79,4,9>>,
++ key = <<72,196,247,97,62,213,222,109,210,204,217,186,172,184,197,148>>}.
++
++incorrect_cipher_state() ->
++ #cipher_state{iv = <<59,201,85,117,188,206,224,136,5,109,46,70,104,79,4,9>>,
++ key = <<72,196,247,97,62,213,222,109,210,204,217,186,172,184,197,254>>}.
From 564391e634bbbf4b21763c71485663bfb7a76e6b Mon Sep 17 00:00:00 2001
From: John Eckersberg
Date: Tue, 18 Aug 2015 10:58:05 -0400
Subject: [PATCH 013/292] Disable docs by default on ARM until I figure out why
fop hangs
---
erlang.spec | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/erlang.spec b/erlang.spec
index 6f7bac6..07d9996 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -2,7 +2,13 @@
%{!?need_bootstrap: %global need_bootstrap %{need_bootstrap_set}}
+%ifarch %{arm}
+# For some reason, fop hangs on arm, so for now don't generate docs by
+# default
+%bcond_with doc
+%else
%bcond_without doc
+%endif
%ifarch %{arm} %{ix86} x86_64 ppc %{power64}
%global __with_hipe 1
@@ -10,7 +16,7 @@
Name: erlang
Version: 17.4
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
@@ -2221,6 +2227,9 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
+* Tue Aug 18 2015 John Eckersberg - 17.4-5
+- Disable docs by default on ARM until I figure out why fop hangs
+
* Wed Aug 5 2015 John Eckersberg - 17.4-4
- Add patch for CVE-2015-2774 - TLS-1.0 POODLE vulnerability (rhbz#1206712)
From 3e2c6d644c7a479b6703e7d56a08d56cfbd62ff3 Mon Sep 17 00:00:00 2001
From: Peter Lemenkov
Date: Thu, 14 Jan 2016 14:15:02 +0300
Subject: [PATCH 014/292] Sort packages
Signed-off-by: Peter Lemenkov
---
erlang.spec | 38 +++++++++++++++++++-------------------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/erlang.spec b/erlang.spec
index 07d9996..02720c7 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -170,6 +170,25 @@ environment. Erlang has built-in support for concurrency, distribution
and fault tolerance. Erlang is used in several large telecommunication
systems from Ericsson.
+%package -n emacs-erlang
+Summary: Compiled elisp files for erlang-mode under GNU Emacs
+Requires: emacs-common-erlang = %{version}-%{release}
+Requires: emacs(bin) >= %{_emacs_version}
+Group: Applications/Editors
+BuildArch: noarch
+
+%description -n emacs-erlang
+Erlang mode for GNU Emacs.
+
+%package -n emacs-erlang-el
+Summary: Elisp source files for erlang-mode under GNU Emacs
+Requires: emacs-erlang = %{version}-%{release}
+Group: Applications/Editors
+BuildArch: noarch
+
+%description -n emacs-erlang-el
+Erlang mode for GNU Emacs (source lisp files).
+
%package asn1
Summary: Provides support for Abstract Syntax Notation One
Group: Development/Languages
@@ -854,25 +873,6 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
%description xmerl
Provides support for XML 1.0.
-%package -n emacs-erlang
-Summary: Compiled elisp files for erlang-mode under GNU Emacs
-Requires: emacs-common-erlang = %{version}-%{release}
-Requires: emacs(bin) >= %{_emacs_version}
-Group: Applications/Editors
-BuildArch: noarch
-
-%description -n emacs-erlang
-Erlang mode for GNU Emacs.
-
-%package -n emacs-erlang-el
-Summary: Elisp source files for erlang-mode under GNU Emacs
-Requires: emacs-erlang = %{version}-%{release}
-Group: Applications/Editors
-BuildArch: noarch
-
-%description -n emacs-erlang-el
-Erlang mode for GNU Emacs (source lisp files).
-
%package -n xemacs-erlang
Summary: Compiled elisp files for erlang-mode under XEmacs
Requires: emacs-common-erlang = %{version}-%{release}
From 8448438f90b66be5e1c020083bd1ef53f13417e2 Mon Sep 17 00:00:00 2001
From: Peter Lemenkov
Date: Thu, 14 Jan 2016 18:10:19 +0300
Subject: [PATCH 015/292] Ver. 18.2.2
Signed-off-by: Peter Lemenkov
---
.gitignore | 1 +
erlang.spec | 387 ++++++------
...n-pages-and-do-not-install-miscellan.patch | 8 +-
otp-0002-Remove-rpath.patch | 8 +-
otp-0003-Do-not-install-C-sources.patch | 36 +-
otp-0004-Do-not-install-Java-sources.patch | 8 +-
...teventlog-and-related-doc-files-on-n.patch | 10 +-
otp-0006-Do-not-install-erlang-sources.patch | 308 +++++-----
...it-off-webtool-dependency-from-tools.patch | 4 +-
...-to-crash-dump-on-large-distribution.patch | 31 +
otp-0008-Introduce-os-getenv-2.patch | 63 --
...pport-for-SSLv3-protocol-because-it-.patch | 100 ---
...ding-check-for-TLS-1.0-and-provide-b.patch | 576 ------------------
otp-make-subpackages.py | 150 +++++
sources | 2 +-
15 files changed, 560 insertions(+), 1132 deletions(-)
create mode 100644 otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch
delete mode 100644 otp-0008-Introduce-os-getenv-2.patch
delete mode 100644 otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
delete mode 100644 otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch
create mode 100644 otp-make-subpackages.py
diff --git a/.gitignore b/.gitignore
index 72cea5d..8477df3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -55,3 +55,4 @@ otp_src_R14A.tar.gz
/otp-OTP-17.3.3.tar.gz
/otp-OTP-17.3.4.tar.gz
/otp-OTP-17.4.tar.gz
+/otp-OTP-18.2.2.tar.gz
diff --git a/erlang.spec b/erlang.spec
index 02720c7..0ed6ce9 100644
--- a/erlang.spec
+++ b/erlang.spec
@@ -15,12 +15,12 @@
%endif
Name: erlang
-Version: 17.4
-Release: 5%{?dist}
+Version: 18.2.2
+Release: 1%{?dist}
Summary: General-purpose programming language and runtime environment
Group: Development/Languages
-License: ERPL
+License: ASL 2.0
URL: http://www.erlang.org
%if 0%{?el7}%{?fedora}
VCS: scm:git:https://github.com/erlang/otp
@@ -30,9 +30,10 @@ Source5: epmd.service
Source6: epmd.socket
Source7: epmd@.service
Source8: epmd@.socket
+# These files are intended for Fedora package maintainers only.
+Source998: otp-make-subpackages.py
Source999: otp-get-patches.sh
-
# For the source of the Fedora specific patches, see the respective
# branch at https://github.com/lemenkov/otp
#
@@ -69,22 +70,11 @@ Patch6: otp-0006-Do-not-install-erlang-sources.patch
# Split off webtool dependency from tools
Patch7: otp-0007-Split-off-webtool-dependency-from-tools.patch
# Fedora specific patch
-# Introduce os:getenv/2
-Patch8: otp-0008-Introduce-os-getenv-2.patch
-# Fedora specific patch
-# Patch removes support for SSLv3 protocol because it is proved
-Patch9: otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
+# Add patch to crash dump on large distribution
+Patch8: otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch
# end of autogenerated patch tag list
-# https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2015-2774
-Patch10: otp-0010-ssl-Reenable-padding-check-for-TLS-1.0-and-provide-b.patch
-
-BuildRequires: lksctp-tools-devel
-BuildRequires: ncurses-devel
-BuildRequires: openssl-devel
-BuildRequires: zlib-devel
BuildRequires: flex
-BuildRequires: m4
%if %{with doc}
# BEWARE. No fop for EPEL5, and only for x86/x86_64 in EPEL6, so we cannot regenerate docs here
BuildRequires: fop
@@ -96,11 +86,6 @@ BuildRequires: erlang
%endif
%endif
-BuildRequires: emacs
-BuildRequires: xemacs
-BuildRequires: emacs-el
-BuildRequires: xemacs-packages-extra-el
-
%if 0%{?el7}%{?fedora}
# for
BuildRequires: systemd-devel
@@ -170,28 +155,32 @@ environment. Erlang has built-in support for concurrency, distribution
and fault tolerance. Erlang is used in several large telecommunication
systems from Ericsson.
+### BEGIN OF AUTOGENERATED LIST ###
+
%package -n emacs-erlang
-Summary: Compiled elisp files for erlang-mode under GNU Emacs
-Requires: emacs-common-erlang = %{version}-%{release}
-Requires: emacs(bin) >= %{_emacs_version}
-Group: Applications/Editors
-BuildArch: noarch
+Summary: Compiled elisp files for erlang-mode under GNU Emacs
+Group: Applications/Editors
+BuildRequires: emacs
+BuildRequires: emacs-el
+Requires: emacs-common-erlang = %{version}-%{release}
+Requires: emacs(bin) >= %{_emacs_version}
+BuildArch: noarch
%description -n emacs-erlang
Erlang mode for GNU Emacs.
%package -n emacs-erlang-el
-Summary: Elisp source files for erlang-mode under GNU Emacs
-Requires: emacs-erlang = %{version}-%{release}
-Group: Applications/Editors
-BuildArch: noarch
+Summary: Elisp source files for erlang-mode under GNU Emacs
+Group: Applications/Editors
+Requires: emacs-erlang = %{version}-%{release}
+BuildArch: noarch
%description -n emacs-erlang-el
Erlang mode for GNU Emacs (source lisp files).
%package asn1
-Summary: Provides support for Abstract Syntax Notation One
-Group: Development/Languages
+Summary: Provides support for Abstract Syntax Notation One
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -200,14 +189,15 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Provides support for Abstract Syntax Notation One.
%package common_test
-Summary: A portable framework for automatic testing
-Group: Development/Languages
+Summary: A portable framework for automatic testing
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-debugger%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
+Requires: %{name}-observer%{?_isa} = %{version}-%{release}
Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release}
Requires: %{name}-sasl%{?_isa} = %{version}-%{release}
Requires: %{name}-snmp%{?_isa} = %{version}-%{release}
@@ -215,15 +205,14 @@ Requires: %{name}-ssh%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Requires: %{name}-test_server%{?_isa} = %{version}-%{release}
Requires: %{name}-tools%{?_isa} = %{version}-%{release}
-Requires: %{name}-webtool%{?_isa} = %{version}-%{release}
Requires: %{name}-xmerl%{?_isa} = %{version}-%{release}
%description common_test
A portable framework for automatic testing.
%package compiler
-Summary: A byte code compiler for Erlang which produces highly compact code
-Group: Development/Languages
+Summary: A byte code compiler for Erlang which produces highly compact code
+Group: Development/Languages
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-hipe%{?_isa} = %{version}-%{release}
@@ -234,8 +223,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A byte code compiler for Erlang which produces highly compact code.
%package cosEvent
-Summary: Orber OMG Event Service
-Group: Development/Languages
+Summary: Orber OMG Event Service
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-orber%{?_isa} = %{version}-%{release}
@@ -245,8 +234,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG Event Service.
%package cosEventDomain
-Summary: Orber OMG Event Domain Service
-Group: Development/Languages
+Summary: Orber OMG Event Domain Service
+Group: Development/Languages
Requires: %{name}-cosNotification%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -257,8 +246,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG Event Domain Service.
%package cosFileTransfer
-Summary: Orber OMG File Transfer Service
-Group: Development/Languages
+Summary: Orber OMG File Transfer Service
+Group: Development/Languages
Requires: %{name}-cosProperty%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
@@ -271,8 +260,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG File Transfer Service.
%package cosNotification
-Summary: Orber OMG Notification Service
-Group: Development/Languages
+Summary: Orber OMG Notification Service
+Group: Development/Languages
Requires: %{name}-cosEvent%{?_isa} = %{version}-%{release}
Requires: %{name}-cosTime%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
@@ -284,8 +273,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG Notification Service.
%package cosProperty
-Summary: Orber OMG Property Service
-Group: Development/Languages
+Summary: Orber OMG Property Service
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-mnesia%{?_isa} = %{version}-%{release}
@@ -296,8 +285,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG Property Service.
%package cosTime
-Summary: Orber OMG Timer and TimerEvent Service
-Group: Development/Languages
+Summary: Orber OMG Timer and TimerEvent Service
+Group: Development/Languages
Requires: %{name}-cosEvent%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -308,8 +297,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG Timer and TimerEvent Service.
%package cosTransactions
-Summary: Orber OMG Transaction Service
-Group: Development/Languages
+Summary: Orber OMG Transaction Service
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-orber%{?_isa} = %{version}-%{release}
@@ -319,8 +308,9 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Orber OMG Transaction Service.
%package crypto
-Summary: Cryptographical support
-Group: Development/Languages
+Summary: Cryptographical support
+Group: Development/Languages
+BuildRequires: openssl-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -329,8 +319,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Cryptographical support.
%package debugger
-Summary: A debugger for debugging and testing of Erlang programs
-Group: Development/Languages
+Summary: A debugger for debugging and testing of Erlang programs
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -341,8 +331,8 @@ Requires: %{name}-wx%{?_isa} = %{version}-%{release}
A debugger for debugging and testing of Erlang programs.
%package dialyzer
-Summary: A DIscrepancy AnaLYZer for ERlang programs
-Group: Development/Languages
+Summary: A DIscrepancy AnaLYZer for ERlang programs
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-hipe%{?_isa} = %{version}-%{release}
@@ -356,9 +346,9 @@ Requires: graphviz
A DIscrepancy AnaLYZer for ERlang programs.
%package diameter
-Summary: Diameter (RFC 3588) library
-Group: Development/Languages
-BuildRequires: ed
+Summary: Diameter (RFC 3588) library
+Group: Development/Languages
+BuildRequires: ed
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release}
@@ -371,17 +361,17 @@ Diameter (RFC 3588) library
%if %{with doc}
%package doc
-Summary: Erlang documentation
-Group: Development/Languages
-BuildArch: noarch
+Summary: Erlang documentation
+Group: Development/Languages
+BuildArch: noarch
%description doc
Documentation for Erlang.
%endif
%package edoc
-Summary: A utility used to generate documentation out of tags in source files
-Group: Development/Languages
+Summary: A utility used to generate documentation out of tags in source files
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -393,8 +383,8 @@ Requires: %{name}-xmerl%{?_isa} = %{version}-%{release}
A utility used to generate documentation out of tags in source files.
%package eldap
-Summary: Erlang LDAP library
-Group: Development/Languages
+Summary: Erlang LDAP library
+Group: Development/Languages
Requires: %{name}-asn1%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -405,8 +395,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Erlang LDAP library.
%package erl_docgen
-Summary: A utility used to generate erlang HTML documentation
-Group: Development/Languages
+Summary: A utility used to generate erlang HTML documentation
+Group: Development/Languages
Requires: %{name}-edoc%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -416,28 +406,29 @@ Requires: %{name}-xmerl%{?_isa} = %{version}-%{release}
A utility used to generate erlang HTML documentation.
%package erl_interface
-Summary: Low level interface to C
-Group: Development/Languages
-Requires: %{name}-erts%{?_isa} = %{version}-%{release}
+Summary: Low level interface to C
+Group: Development/Languages
+Requires: %{name}-erts%{?_isa} = %{version}-%{release}
%description erl_interface
Low level interface to C.
%package erts
-Summary: Functionality necessary to run the Erlang System itself
-Group: Development/Languages
+Summary: Functionality necessary to run the Erlang System itself
+Group: Development/Languages
+BuildRequires: lksctp-tools-devel
+BuildRequires: m4
+BuildRequires: ncurses-devel
+BuildRequires: zlib-devel
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
-# This library is dlopened so it can't be picked up automatically by the RPM
-# dependency checker
Requires: lksctp-tools
# See erts/emulator/beam/erl_driver.h or call erlang:system_info(driver_version).
#Provides: erlang(erl_drv_version) = %%(%%{buildroot}/bin/erl -noshell -eval 'io:format(erlang:system_info(driver_version)).' -s erlang halt)
-Provides: erlang(erl_drv_version) = 3.1
+Provides: erlang(erl_drv_version) = 3.2
# See erts/emulator/beam/erl_nif.h or call erlang:system_info(nif_version).
#Provides: erlang(erl_nif_version) = %%(%%{buildroot}/bin/erl -noshell -eval 'io:format(erlang:system_info(nif_version)).' -s erlang halt)
-Provides: erlang(erl_nif_version) = 2.7
-# These sub-packages were removed once
+Provides: erlang(erl_nif_version) = 2.9
Obsoletes: erlang-appmon
Obsoletes: erlang-docbuilder
Obsoletes: erlang-inviso
@@ -449,8 +440,8 @@ Obsoletes: erlang-tv
Functionality necessary to run the Erlang System itself.
%package et
-Summary: An event tracer for Erlang programs
-Group: Development/Languages
+Summary: An event tracer for Erlang programs
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release}
@@ -461,8 +452,8 @@ Requires: %{name}-wx%{?_isa} = %{version}-%{release}
An event tracer for Erlang programs.
%package eunit
-Summary: Support for unit testing
-Group: Development/Languages
+Summary: Support for unit testing
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -471,29 +462,35 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Support for unit testing.
%package examples
-Summary: Examples for some Erlang modules
-Group: Development/Languages
-Requires: %{name}%{?_isa} = %{version}-%{release}
+Summary: Examples for some Erlang modules
+Group: Development/Languages
+Requires: %{name}-erts%{?_isa} = %{version}-%{release}
+Requires: %{name}-gs%{?_isa} = %{version}-%{release}
+Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
+Requires: %{name}-public_key%{?_isa} = %{version}-%{release}
+Requires: %{name}-sasl%{?_isa} = %{version}-%{release}
+Requires: %{name}-ssl%{?_isa} = %{version}-%{release}
+Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
%description examples
Examples for some Erlang modules.
%package gs
-Summary: A library for Tcl/Tk support in Erlang
-Group: Development/Languages
+Summary: A library for Tcl/Tk support in Erlang
+Group: Development/Languages
+BuildRequires: tcl-devel
+BuildRequires: tk-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
-BuildRequires: tcl-devel
-BuildRequires: tk-devel
-Requires: tk
+Requires: tk
%description gs
A Graphics System used to write platform independent user interfaces.
%package hipe
-Summary: High Performance Erlang
-Group: Development/Languages
+Summary: High Performance Erlang
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -504,8 +501,9 @@ Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release}
High Performance Erlang.
%package ic
-Summary: IDL compiler
-Group: Development/Languages
+Summary: IDL compiler
+Group: Development/Languages
+BuildRequires: java-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -514,42 +512,30 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
IDL compiler.
%package inets
-Summary: A set of services such as a Web server and a ftp client etc
-Group: Development/Languages
+Summary: A set of services such as a Web server and a ftp client etc
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-mnesia%{?_isa} = %{version}-%{release}
Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release}
Requires: %{name}-ssl%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
-# FIXME see erlang-jinterface also
-#Requires: jpackage-utils
%description inets
A set of services such as a Web server and a ftp client etc.
%package jinterface
-Summary: A library for accessing Java from Erlang
-Group: Development/Languages
-Requires: %{name}-erts%{?_isa} = %{version}-%{release}
-# FIXME see erlang-ic also
-#Requires: jpackage-utils
-%if 0%{?el7}%{?fedora}
-BuildRequires: java-devel
-%else
-%ifarch %{ix86} x86_64
-BuildRequires: java-devel
-%else
-BuildRequires: java-devel-gcj
-%endif
-%endif
+Summary: A library for accessing Java from Erlang
+Group: Development/Languages
+BuildRequires: java-devel
+Requires: %{name}-erts%{?_isa} = %{version}-%{release}
%description jinterface
Low level interface to Java.
%package kernel
-Summary: Main erlang library
-Group: Development/Languages
+Summary: Main erlang library
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -557,8 +543,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Main erlang library.
%package megaco
-Summary: Megaco/H.248 support library
-Group: Development/Languages
+Summary: Megaco/H.248 support library
+Group: Development/Languages
Requires: %{name}-asn1%{?_isa} = %{version}-%{release}
Requires: %{name}-debugger%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
@@ -573,8 +559,8 @@ decomposed multimedia gateway, enabling separation of call control
from media conversion.
%package mnesia
-Summary: A heavy duty real-time distributed database
-Group: Development/Languages
+Summary: A heavy duty real-time distributed database
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -583,8 +569,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A heavy duty real-time distributed database.
%package observer
-Summary: A set of tools for tracing and investigation of distributed systems
-Group: Development/Languages
+Summary: A set of tools for tracing and investigation of distributed systems
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-et%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
@@ -597,20 +583,20 @@ Requires: %{name}-wx%{?_isa} = %{version}-%{release}
A set of tools for tracing and investigation of distributed systems.
%package odbc
-Summary: A library for unixODBC support in Erlang
-Group: Development/Languages
+Summary: A library for unixODBC support in Erlang
+Group: Development/Languages
+BuildRequires: unixODBC-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
-BuildRequires: unixODBC-devel
%description odbc
An interface to relational SQL-databases built on ODBC (Open Database
Connectivity).
%package orber
-Summary: A CORBA Object Request Broker
-Group: Development/Languages
+Summary: A CORBA Object Request Broker
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -622,8 +608,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A CORBA Object Request Broker.
%package os_mon
-Summary: A monitor which allows inspection of the underlying operating system
-Group: Development/Languages
+Summary: A monitor which allows inspection of the underlying operating system
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-mnesia%{?_isa} = %{version}-%{release}
@@ -636,8 +622,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A monitor which allows inspection of the underlying operating system.
%package ose
-Summary: A module for interacting with Enea OSE
-Group: Development/Languages
+Summary: A module for interacting with Enea OSE
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -645,8 +631,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A module for interacting with Enea OSE.
%package otp_mibs
-Summary: SNMP management information base for Erlang/OTP nodes
-Group: Development/Languages
+Summary: SNMP management information base for Erlang/OTP nodes
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-mnesia%{?_isa} = %{version}-%{release}
@@ -657,8 +643,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
SNMP management information base for Erlang/OTP nodes.
%package parsetools
-Summary: A set of parsing and lexical analysis tools
-Group: Development/Languages
+Summary: A set of parsing and lexical analysis tools
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -667,8 +653,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A set of parsing and lexical analysis tools.
%package percept
-Summary: A concurrency profiler tool
-Group: Development/Languages
+Summary: A concurrency profiler tool
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -679,8 +665,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A concurrency profiler tool.
%package public_key
-Summary: API to public key infrastructure
-Group: Development/Languages
+Summary: API to public key infrastructure
+Group: Development/Languages
Requires: %{name}-asn1%{?_isa} = %{version}-%{release}
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
@@ -691,8 +677,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
API to public key infrastructure.
%package reltool
-Summary: A release management tool
-Group: Development/Languages
+Summary: A release management tool
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-sasl%{?_isa} = %{version}-%{release}
@@ -709,8 +695,8 @@ target system. The backend provides a batch interface
for generation of customized target systems.
%package runtime_tools
-Summary: A set of tools to include in a production system
-Group: Development/Languages
+Summary: A set of tools to include in a production system
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-mnesia%{?_isa} = %{version}-%{release}
@@ -720,8 +706,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A set of tools to include in a production system.
%package sasl
-Summary: The System Architecture Support Libraries
-Group: Development/Languages
+Summary: The System Architecture Support Libraries
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -732,8 +718,8 @@ The System Architecture Support Libraries is a set of tools for
release upgrades and alarm handling etc.
%package snmp
-Summary: Simple Network Management Protocol (SNMP) support
-Group: Development/Languages
+Summary: Simple Network Management Protocol (SNMP) support
+Group: Development/Languages
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -746,8 +732,8 @@ Simple Network Management Protocol (SNMP) support including a
MIB compiler and tools for creating SNMP agents.
%package ssh
-Summary: Secure Shell application with sftp and ssh support
-Group: Development/Languages
+Summary: Secure Shell application with sftp and ssh support
+Group: Development/Languages
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -758,10 +744,11 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Secure Shell application with sftp and ssh support.
%package ssl
-Summary: Secure Socket Layer support
-Group: Development/Languages
+Summary: Secure Socket Layer support
+Group: Development/Languages
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
+Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-public_key%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -770,8 +757,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Secure Socket Layer support.
%package stdlib
-Summary: The Erlang standard libraries
-Group: Development/Languages
+Summary: The Erlang standard libraries
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
@@ -781,8 +768,9 @@ Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
The Erlang standard libraries.
%package syntax_tools
-Summary: A set of tools for dealing with erlang sources
-Group: Development/Languages
+Summary: A set of tools for dealing with erlang sources
+Group: Development/Languages
+Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -792,22 +780,23 @@ A utility used to handle abstract Erlang syntax trees,
reading source files differently, pretty-printing syntax trees.
%package test_server
-Summary: The OTP Test Server
-Group: Development/Languages
+Summary: The OTP Test Server
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-observer%{?_isa} = %{version}-%{release}
Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
+Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release}
Requires: %{name}-tools%{?_isa} = %{version}-%{release}
%description test_server
The OTP Test Server.
%package tools
-Summary: A set of programming tools including a coverage analyzer etc
-Group: Development/Languages
+Summary: A set of programming tools including a coverage analyzer etc
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
@@ -820,14 +809,14 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
%if 0%{?fedora} >= 21 || 0%{?rhel} >= 8
Suggests: %{name}-webtool%{?_isa} = %{version}-%{release}
%endif
-Provides: emacs-common-erlang = %{version}-%{release}
+Provides: emacs-common-erlang = %{version}-%{release}
%description tools
A set of programming tools including a coverage analyzer etc.
%package typer
-Summary: TYPe annotator for ERlang programs
-Group: Development/Languages
+Summary: TYPe annotator for ERlang programs
+Group: Development/Languages
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-dialyzer%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
@@ -839,8 +828,8 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
TYPe annotator for ERlang programs.
%package webtool
-Summary: A tool that simplifying the use of web based Erlang tools
-Group: Development/Languages
+Summary: A tool that simplifying the use of web based Erlang tools
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
@@ -851,21 +840,21 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
A tool that simplifying the use of web based Erlang tools.
%package wx
-Summary: A library for wxWidgets support in Erlang
-Group: Development/Languages
+Summary: A library for wxWidgets support in Erlang
+Group: Development/Languages
+BuildRequires: wxGTK-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
-Requires: mesa-libGL
-Requires: mesa-libGLU
-BuildRequires: wxGTK-devel
+Requires: mesa-libGL
+Requires: mesa-libGLU
%description wx
A Graphics System used to write platform independent user interfaces.
%package xmerl
-Summary: Provides support for XML 1.0
-Group: Development/Languages
+Summary: Provides support for XML 1.0
+Group: Development/Languages
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@@ -874,24 +863,28 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Provides support for XML 1.0.
%package -n xemacs-erlang
-Summary: Compiled elisp files for erlang-mode under XEmacs
-Requires: emacs-common-erlang = %{version}-%{release}
-Group: Applications/Editors
-BuildArch: noarch
-Requires: xemacs(bin) >= %{_xemacs_version}
+Summary: Compiled elisp files for erlang-mode under XEmacs
+Group: Applications/Editors
+BuildRequires: xemacs
+BuildRequires: xemacs-packages-extra-el
+Requires: emacs-common-erlang = %{version}-%{release}
+Requires: xemacs(bin) >= %{_xemacs_version}
+BuildArch: noarch
%description -n xemacs-erlang
Erlang mode for XEmacs.
%package -n xemacs-erlang-el
-Summary: Elisp source files for erlang-mode under XEmacs
-Requires: xemacs-erlang = %{version}-%{release}
-Group: Applications/Editors
-BuildArch: noarch
+Summary: Elisp source files for erlang-mode under XEmacs
+Group: Applications/Editors
+Requires: xemacs-erlang = %{version}-%{release}
+BuildArch: noarch
%description -n xemacs-erlang-el
Erlang mode for XEmacs (source lisp files).
+### END OF AUTOGENERATED LIST ###
+
%prep
%setup -q -n otp-OTP-%{version}
@@ -903,12 +896,9 @@ Erlang mode for XEmacs (source lisp files).
%patch5 -p1 -b .Do_not_install_nteventlog_and_related_doc_files_on_n
%patch6 -p1 -b .Do_not_install_erlang_sources
%patch7 -p1 -b .Split_off_webtool_dependency_from_tools
-%patch8 -p1 -b .Introduce_os_getenv_2
-%patch9 -p1 -b .Patch_removes_support_for_SSLv3_protocol_because_it_
+%patch8 -p1 -b .Add_patch_to_crash_dump_on_large_distribution
# end of autogenerated prep patch list
-%patch10 -p1
-
# FIXME we should come up with a better solution
# remove shipped zlib sources
#rm -f erts/emulator/zlib/*.[ch]
@@ -1021,7 +1011,7 @@ for i in erts-* ; do mv -v $i/doc $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/$
cd $RPM_BUILD_ROOT%{_libdir}/erlang/lib
for i in * ; do mv -v $i/doc $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/lib/$i || true ; done
popd
-cp -av AUTHORS EPLICENCE README.md $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+cp -av AUTHORS LICENSE.txt README.md $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
mv -v $RPM_BUILD_ROOT%{_libdir}/erlang/PR.template $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
mv -v $RPM_BUILD_ROOT%{_libdir}/erlang/README $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
mv -v $RPM_BUILD_ROOT%{_libdir}/erlang/COPYRIGHT $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
@@ -1098,7 +1088,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%dir %{_docdir}/%{name}-%{version}/
%doc %{_docdir}/%{name}-%{version}/AUTHORS
%doc %{_docdir}/%{name}-%{version}/COPYRIGHT
-%doc %{_docdir}/%{name}-%{version}/EPLICENCE
+%doc %{_docdir}/%{name}-%{version}/LICENSE.txt
%doc %{_docdir}/%{name}-%{version}/PR.template
%doc %{_docdir}/%{name}-%{version}/README
%doc %{_docdir}/%{name}-%{version}/README.md
@@ -1458,11 +1448,6 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%files examples
%{_libdir}/erlang/lib/asn1-*/examples/
-#%{_libdir}/erlang/lib/cosFileTransfer-*/examples/
-#%{_libdir}/erlang/lib/cosNotification-*/examples/
-#%{_libdir}/erlang/lib/cosProperty-*/examples/
-#%{_libdir}/erlang/lib/cosTime-*/examples/
-#%{_libdir}/erlang/lib/cosTransactions-*/examples/
%{_libdir}/erlang/lib/diameter-*/examples/
%{_libdir}/erlang/lib/et-*/examples/
%{_libdir}/erlang/lib/eunit-*/examples/
@@ -1478,7 +1463,6 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/lib/runtime_tools-*/examples/
%{_libdir}/erlang/lib/sasl-*/examples/
%{_libdir}/erlang/lib/snmp-*/examples/
-#%{_libdir}/erlang/lib/ssh-*/examples/
%{_libdir}/erlang/lib/ssl-*/examples/
%{_libdir}/erlang/lib/stdlib-*/examples/
%{_libdir}/erlang/lib/syntax_tools-*/examples/
@@ -1524,7 +1508,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/http_uri.*
%{_libdir}/erlang/man/man3/httpc.*
%{_libdir}/erlang/man/man3/httpd.*
-%{_libdir}/erlang/man/man3/httpd_conf.*
+%{_libdir}/erlang/man/man3/httpd_custom_api.*
%{_libdir}/erlang/man/man3/httpd_socket.*
%{_libdir}/erlang/man/man3/httpd_util.*
%{_libdir}/erlang/man/man3/inets.*
@@ -1605,7 +1589,6 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%files mnesia
%dir %{_libdir}/erlang/lib/mnesia-*/
%{_libdir}/erlang/lib/mnesia-*/ebin
-#%{_libdir}/erlang/lib/mnesia-*/include
%{_libdir}/erlang/lib/mnesia-*/src
%if %{with doc}
%{_libdir}/erlang/man/man3/mnesia.*
@@ -1831,6 +1814,8 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/lib/ssl-*/src
%if %{with doc}
%{_libdir}/erlang/man/man3/ssl.*
+%{_libdir}/erlang/man/man3/ssl_crl_cache.*
+%{_libdir}/erlang/man/man3/ssl_crl_cache_api.*
%{_libdir}/erlang/man/man3/ssl_session_cache_api.*
%{_libdir}/erlang/man/man6/ssl.*
%endif
@@ -1852,6 +1837,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/digraph.*
%{_libdir}/erlang/man/man3/digraph_utils.*
%{_libdir}/erlang/man/man3/epp.*
+%{_libdir}/erlang/man/man3/erl_anno.*
%{_libdir}/erlang/man/man3/erl_eval.*
%{_libdir}/erlang/man/man3/erl_expand_records.*
%{_libdir}/erlang/man/man3/erl_id_trans.*
@@ -1880,12 +1866,12 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/ms_transform.*
%{_libdir}/erlang/man/man3/orddict.*
%{_libdir}/erlang/man/man3/ordsets.*
-%{_libdir}/erlang/man/man3/pg.*
%{_libdir}/erlang/man/man3/pool.*
%{_libdir}/erlang/man/man3/proc_lib.*
%{_libdir}/erlang/man/man3/proplists.*
%{_libdir}/erlang/man/man3/qlc.*
%{_libdir}/erlang/man/man3/queue.*
+%{_libdir}/erlang/man/man3/rand.*
%{_libdir}/erlang/man/man3/random.*
%{_libdir}/erlang/man/man3/re.*
%{_libdir}/erlang/man/man3/sets.*
@@ -1906,6 +1892,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%files syntax_tools
%dir %{_libdir}/erlang/lib/syntax_tools-*/
%{_libdir}/erlang/lib/syntax_tools-*/ebin
+%{_libdir}/erlang/lib/syntax_tools-*/include
%if %{with doc}
%{_libdir}/erlang/man/man3/epp_dodger.*
%{_libdir}/erlang/man/man3/erl_comment_scan.*
@@ -1915,6 +1902,8 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/erl_syntax_lib.*
%{_libdir}/erlang/man/man3/erl_tidy.*
%{_libdir}/erlang/man/man3/igor.*
+%{_libdir}/erlang/man/man3/merl.*
+%{_libdir}/erlang/man/man3/merl_transform.*
%{_libdir}/erlang/man/man3/prettypr.*
%endif
@@ -1952,7 +1941,6 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/erts-*/bin/typer
%dir %{_libdir}/erlang/lib/typer-*/
%{_libdir}/erlang/lib/typer-*/ebin/
-#%{_libdir}/erlang/lib/typer-*/src/
%files webtool
%{_libdir}/erlang/lib/webtool-*/
@@ -1983,6 +1971,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/wxAuiNotebook.*
%{_libdir}/erlang/man/man3/wxAuiNotebookEvent.*
%{_libdir}/erlang/man/man3/wxAuiPaneInfo.*
+%{_libdir}/erlang/man/man3/wxAuiSimpleTabArt.*
%{_libdir}/erlang/man/man3/wxAuiTabArt.*
%{_libdir}/erlang/man/man3/wxBitmap.*
%{_libdir}/erlang/man/man3/wxBitmapButton.*
@@ -2019,6 +2008,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/wxDateEvent.*
%{_libdir}/erlang/man/man3/wxDatePickerCtrl.*
%{_libdir}/erlang/man/man3/wxDC.*
+%{_libdir}/erlang/man/man3/wxDCOverlay.*
%{_libdir}/erlang/man/man3/wxDialog.*
%{_libdir}/erlang/man/man3/wxDirDialog.*
%{_libdir}/erlang/man/man3/wxDirPickerCtrl.*
@@ -2105,6 +2095,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/wxMiniFrame.*
%{_libdir}/erlang/man/man3/wxMirrorDC.*
%{_libdir}/erlang/man/man3/wxMouseCaptureChangedEvent.*
+%{_libdir}/erlang/man/man3/wxMouseCaptureLostEvent.*
%{_libdir}/erlang/man/man3/wxMouseEvent.*
%{_libdir}/erlang/man/man3/wxMoveEvent.*
%{_libdir}/erlang/man/man3/wxMultiChoiceDialog.*
@@ -2112,6 +2103,7 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%{_libdir}/erlang/man/man3/wxNotebook.*
%{_libdir}/erlang/man/man3/wxNotebookEvent.*
%{_libdir}/erlang/man/man3/wxNotifyEvent.*
+%{_libdir}/erlang/man/man3/wxOverlay.*
%{_libdir}/erlang/man/man3/wxPageSetupDialog.*
%{_libdir}/erlang/man/man3/wxPageSetupDialogData.*
%{_libdir}/erlang/man/man3/wxPaintDC.*
@@ -2227,6 +2219,9 @@ useradd -r -g epmd -d /tmp -s /sbin/nologin \
%changelog
+* Mon Jan 11 2016 Peter Lemenkov - 18.2.2-1
+- Ver. 18.2.2
+
* Tue Aug 18 2015 John Eckersberg - 17.4-5
- Disable docs by default on ARM until I figure out why fop hangs
diff --git a/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch b/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch
index 6aeadc8..2602d40 100644
--- a/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch
+++ b/otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch
@@ -6,10 +6,10 @@ Subject: [PATCH] Do not format man-pages and do not install miscellaneous
Signed-off-by: Peter Lemenkov
diff --git a/erts/etc/common/Makefile.in b/erts/etc/common/Makefile.in
-index 0cf965f..94e82a8 100644
+index 8e55fa7..9512faa 100644
--- a/erts/etc/common/Makefile.in
+++ b/erts/etc/common/Makefile.in
-@@ -550,10 +550,6 @@ endif
+@@ -551,10 +551,6 @@ endif
ifneq ($(INSTALL_TOP_BIN),)
$(INSTALL_PROGRAM) $(INSTALL_TOP_BIN) "$(RELEASE_PATH)"
endif
@@ -21,10 +21,10 @@ index 0cf965f..94e82a8 100644
$(INSTALL_DIR) "$(RELEASE_PATH)/erts-$(VSN)/src"
$(INSTALL_DATA) $(INSTALL_SRC) "$(RELEASE_PATH)/erts-$(VSN)/src"
diff --git a/erts/etc/unix/Install.src b/erts/etc/unix/Install.src
-index 8eb1db7..9e340bb 100644
+index 6634ae3..fa18956 100644
--- a/erts/etc/unix/Install.src
+++ b/erts/etc/unix/Install.src
-@@ -140,14 +140,5 @@ cp -p ../releases/%I_SYSTEM_VSN%/start_*.boot .
+@@ -141,14 +141,5 @@ cp -p ../releases/%I_SYSTEM_VSN%/start_*.boot .
cp -p ../releases/%I_SYSTEM_VSN%/no_dot_erlang.boot .
cp -p $Name.boot start.boot
cp -p ../releases/%I_SYSTEM_VSN%/$Name.script start.script
diff --git a/otp-0002-Remove-rpath.patch b/otp-0002-Remove-rpath.patch
index 492734f..77418af 100644
--- a/otp-0002-Remove-rpath.patch
+++ b/otp-0002-Remove-rpath.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Remove rpath
Signed-off-by: Peter Lemenkov
diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in
-index 8c92b5b..5b36c19 100644
+index e66c0ca..574cdf5 100644
--- a/lib/crypto/c_src/Makefile.in
+++ b/lib/crypto/c_src/Makefile.in
-@@ -89,7 +89,7 @@ endif
+@@ -90,7 +90,7 @@ endif
DYNAMIC_CRYPTO_LIB=@SSL_DYNAMIC_ONLY@
ifeq ($(DYNAMIC_CRYPTO_LIB),yes)
@@ -18,10 +18,10 @@ index 8c92b5b..5b36c19 100644
EXTRA_FLAGS = -DHAVE_DYNAMIC_CRYPTO_LIB
else
diff --git a/lib/crypto/priv/Makefile b/lib/crypto/priv/Makefile
-index 0989f14..0d29444 100644
+index ff9d3e1..d3aba77 100644
--- a/lib/crypto/priv/Makefile
+++ b/lib/crypto/priv/Makefile
-@@ -60,7 +60,7 @@ OBJS = $(OBJDIR)/crypto.o
+@@ -61,7 +61,7 @@ OBJS = $(OBJDIR)/crypto.o
# ----------------------------------------------------
$(SO_NIFLIB): $(OBJS)
diff --git a/otp-0003-Do-not-install-C-sources.patch b/otp-0003-Do-not-install-C-sources.patch
index f89bcb7..d4abd19 100644
--- a/otp-0003-Do-not-install-C-sources.patch
+++ b/otp-0003-Do-not-install-C-sources.patch
@@ -14,10 +14,10 @@ https://bugzilla.redhat.com/818419
Signed-off-by: Peter Lemenkov
diff --git a/lib/asn1/c_src/Makefile b/lib/asn1/c_src/Makefile
-index a7cd03f..6da4d75 100644
+index 2b72e1a..0522562 100644
--- a/lib/asn1/c_src/Makefile
+++ b/lib/asn1/c_src/Makefile
-@@ -142,8 +142,6 @@ release_spec: opt
+@@ -143,8 +143,6 @@ release_spec: opt
ifneq ($(findstring ose,$(TARGET)),ose)
$(INSTALL_PROGRAM) $(NIF_SHARED_OBJ_FILE) "$(RELSYSDIR)/priv/lib"
endif
@@ -27,10 +27,10 @@ index a7cd03f..6da4d75 100644
release_docs_spec:
diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in
-index 5b36c19..470821e 100644
+index 574cdf5..428c316 100644
--- a/lib/crypto/c_src/Makefile.in
+++ b/lib/crypto/c_src/Makefile.in
-@@ -199,14 +199,10 @@ docs:
+@@ -200,14 +200,10 @@ docs:
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -46,10 +46,10 @@ index 5b36c19..470821e 100644
endif
endif
diff --git a/lib/erl_interface/src/Makefile.in b/lib/erl_interface/src/Makefile.in
-index 7c09b60..2c14f9e 100644
+index 777d709..57917ae 100644
--- a/lib/erl_interface/src/Makefile.in
+++ b/lib/erl_interface/src/Makefile.in
-@@ -904,14 +904,14 @@ ifneq ($(EXE_TARGETS),)
+@@ -905,14 +905,14 @@ ifneq ($(EXE_TARGETS),)
$(INSTALL_PROGRAM) $(EXE_TARGETS) "$(RELSYSDIR)/bin"
endif
$(INSTALL_DATA) $(EXTRA) "$(RELSYSDIR)/src"
@@ -73,10 +73,10 @@ index 7c09b60..2c14f9e 100644
release_docs:
diff --git a/lib/ic/c_src/Makefile.in b/lib/ic/c_src/Makefile.in
-index ed860ab..96206ae 100644
+index b9f92a0..9612f24 100644
--- a/lib/ic/c_src/Makefile.in
+++ b/lib/ic/c_src/Makefile.in
-@@ -144,12 +144,10 @@ $(OBJDIR)/%.o: %.c
+@@ -145,12 +145,10 @@ $(OBJDIR)/%.o: %.c
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -90,10 +90,10 @@ index ed860ab..96206ae 100644
$(INSTALL_DATA) $(LIBRARY) "$(RELSYSDIR)/priv/lib"
$(INSTALL_DATA) $(IDL_FILES) $(H_FILES) "$(RELEASE_PATH)/usr/include"
diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in
-index 6111cf2..bd62e8b 100644
+index 045b6d8..39be02a 100644
--- a/lib/megaco/src/flex/Makefile.in
+++ b/lib/megaco/src/flex/Makefile.in
-@@ -270,7 +270,7 @@ release_spec: opt
+@@ -271,7 +271,7 @@ release_spec: opt
$(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/flex"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
ifeq ($(ENABLE_MEGACO_FLEX_SCANNER),true)
@@ -103,10 +103,10 @@ index 6111cf2..bd62e8b 100644
endif
diff --git a/lib/odbc/c_src/Makefile.in b/lib/odbc/c_src/Makefile.in
-index 6572d28..c7093ae 100644
+index 685eb5d..6c8a432 100644
--- a/lib/odbc/c_src/Makefile.in
+++ b/lib/odbc/c_src/Makefile.in
-@@ -128,11 +128,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -129,11 +129,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
ifdef EXE_TARGET
@@ -119,10 +119,10 @@ index 6572d28..c7093ae 100644
endif
diff --git a/lib/os_mon/c_src/Makefile.in b/lib/os_mon/c_src/Makefile.in
-index f84ccf7..05d194f 100644
+index e9fc5f4..ac9fb73 100644
--- a/lib/os_mon/c_src/Makefile.in
+++ b/lib/os_mon/c_src/Makefile.in
-@@ -125,8 +125,6 @@ $(OBJDIR)/memsup.o: memsup.h
+@@ -126,8 +126,6 @@ $(OBJDIR)/memsup.o: memsup.h
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -132,10 +132,10 @@ index f84ccf7..05d194f 100644
$(INSTALL_PROGRAM) $(TARGET_FILES) "$(RELSYSDIR)/priv/bin"
diff --git a/lib/runtime_tools/c_src/Makefile.in b/lib/runtime_tools/c_src/Makefile.in
-index d46b499..4309aae 100644
+index 448b8c6..860d504 100644
--- a/lib/runtime_tools/c_src/Makefile.in
+++ b/lib/runtime_tools/c_src/Makefile.in
-@@ -156,10 +156,8 @@ docs:
+@@ -157,10 +157,8 @@ docs:
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -147,10 +147,10 @@ index d46b499..4309aae 100644
endif
diff --git a/lib/tools/c_src/Makefile.in b/lib/tools/c_src/Makefile.in
-index b1eb69f..1acfdbf 100644
+index 66bba22..eea37fc 100644
--- a/lib/tools/c_src/Makefile.in
+++ b/lib/tools/c_src/Makefile.in
-@@ -197,8 +197,6 @@ include ../vsn.mk
+@@ -198,8 +198,6 @@ include ../vsn.mk
RELSYSDIR = $(RELEASE_PATH)/lib/tools-$(TOOLS_VSN)
release_spec: all
diff --git a/otp-0004-Do-not-install-Java-sources.patch b/otp-0004-Do-not-install-Java-sources.patch
index 65323fa..d9ba9c4 100644
--- a/otp-0004-Do-not-install-Java-sources.patch
+++ b/otp-0004-Do-not-install-Java-sources.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Do not install Java sources
Signed-off-by: Peter Lemenkov
diff --git a/lib/ic/java_src/com/ericsson/otp/ic/Makefile b/lib/ic/java_src/com/ericsson/otp/ic/Makefile
-index 273614e..5b1fb57 100644
+index d9100cf..6886c71 100644
--- a/lib/ic/java_src/com/ericsson/otp/ic/Makefile
+++ b/lib/ic/java_src/com/ericsson/otp/ic/Makefile
-@@ -112,8 +112,6 @@ docs:
+@@ -113,8 +113,6 @@ docs:
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -18,10 +18,10 @@ index 273614e..5b1fb57 100644
$(INSTALL_DATA) $(JAVA_DEST_ROOT)$(JARFILE) "$(RELSYSDIR)/priv"
diff --git a/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile b/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile
-index ea3ab77..e95757e 100644
+index 1c8364e..34b64a8 100644
--- a/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile
+++ b/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile
-@@ -119,8 +119,6 @@ release release_docs release_tests release_html:
+@@ -120,8 +120,6 @@ release release_docs release_tests release_html:
$(V_at)$(MAKE) $(MFLAGS) RELEASE_PATH="$(RELEASE_PATH)" $(TARGET_MAKEFILE) $@_spec
release_spec: opt
diff --git a/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch b/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch
index cf8e970..b0c843e 100644
--- a/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch
+++ b/otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch
@@ -6,10 +6,10 @@ Subject: [PATCH] Do not install nteventlog and related doc-files on non-win32
Signed-off-by: Peter Lemenkov
diff --git a/lib/os_mon/doc/src/Makefile b/lib/os_mon/doc/src/Makefile
-index 08fd23e..5606cfc 100644
+index 0c5acd9..5f8f1e3 100644
--- a/lib/os_mon/doc/src/Makefile
+++ b/lib/os_mon/doc/src/Makefile
-@@ -35,12 +35,17 @@ RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN)
+@@ -36,12 +36,17 @@ RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN)
# Target Specs
# ----------------------------------------------------
XML_APPLICATION_FILES = ref_man.xml
@@ -29,10 +29,10 @@ index 08fd23e..5606cfc 100644
XML_REF6_FILES = os_mon_app.xml
diff --git a/lib/os_mon/src/Makefile b/lib/os_mon/src/Makefile
-index cd2dade..4e78cf8 100644
+index 9aa068c..1003d24 100644
--- a/lib/os_mon/src/Makefile
+++ b/lib/os_mon/src/Makefile
-@@ -33,8 +33,13 @@ RELSYSDIR = $(RELEASE_PATH)/lib/os_mon-$(VSN)
+@@ -34,8 +34,13 @@ RELSYSDIR = $(RELEASE_PATH)/lib/os_mon-$(VSN)
# ----------------------------------------------------
# Target Specs
# ----------------------------------------------------
@@ -47,7 +47,7 @@ index cd2dade..4e78cf8 100644
INCLUDE=../include
CSRC=../c_src
-@@ -78,7 +83,11 @@ docs:
+@@ -79,7 +84,11 @@ docs:
# ----------------------------------------------------
$(APP_TARGET): $(APP_SRC) ../vsn.mk
diff --git a/otp-0006-Do-not-install-erlang-sources.patch b/otp-0006-Do-not-install-erlang-sources.patch
index 9e0e3a9..933787e 100644
--- a/otp-0006-Do-not-install-erlang-sources.patch
+++ b/otp-0006-Do-not-install-erlang-sources.patch
@@ -8,10 +8,10 @@ Signed-off-by: Peter Lemenkov
Signed-off-by: Hans Ulrich Niedermann
diff --git a/erts/preloaded/src/Makefile b/erts/preloaded/src/Makefile
-index 4ea2d41..e1466c1 100644
+index 52034a0..56d91b9 100644
--- a/erts/preloaded/src/Makefile
+++ b/erts/preloaded/src/Makefile
-@@ -85,8 +85,6 @@ $(APP_TARGET): $(APP_SRC) $(ERL_TOP)/erts/vsn.mk
+@@ -86,8 +86,6 @@ $(APP_TARGET): $(APP_SRC) $(ERL_TOP)/erts/vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: $(APP_TARGET)
@@ -21,10 +21,10 @@ index 4ea2d41..e1466c1 100644
$(INSTALL_DATA) $(STATIC_TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/asn1/src/Makefile b/lib/asn1/src/Makefile
-index 6798da0..4e3ae0e 100644
+index 5b34017..d4677d6 100644
--- a/lib/asn1/src/Makefile
+++ b/lib/asn1/src/Makefile
-@@ -154,7 +154,7 @@ release_spec: opt
+@@ -155,7 +155,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -34,10 +34,10 @@ index 6798da0..4e3ae0e 100644
$(INSTALL_DATA) $(EXAMPLES) "$(RELSYSDIR)/examples"
diff --git a/lib/common_test/src/Makefile b/lib/common_test/src/Makefile
-index 8d74546..a25d85d 100644
+index 987345c..f53546a 100644
--- a/lib/common_test/src/Makefile
+++ b/lib/common_test/src/Makefile
-@@ -140,7 +140,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -144,7 +144,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -47,10 +47,10 @@ index 8d74546..a25d85d 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/compiler/src/Makefile b/lib/compiler/src/Makefile
-index c6d09d8..46dcdf4 100644
+index 299b289..36a048b 100644
--- a/lib/compiler/src/Makefile
+++ b/lib/compiler/src/Makefile
-@@ -165,8 +165,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -172,8 +172,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -62,10 +62,10 @@ index c6d09d8..46dcdf4 100644
$(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/cosEvent/src/Makefile b/lib/cosEvent/src/Makefile
-index 2864ee0..0e27bb6 100644
+index b79f0ec..30d1a1d 100644
--- a/lib/cosEvent/src/Makefile
+++ b/lib/cosEvent/src/Makefile
-@@ -202,7 +202,7 @@ release_spec: opt
+@@ -203,7 +203,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -75,10 +75,10 @@ index 2864ee0..0e27bb6 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosEventDomain/src/Makefile b/lib/cosEventDomain/src/Makefile
-index b4b74bd..420f566 100644
+index da8dcf0..88b3993 100644
--- a/lib/cosEventDomain/src/Makefile
+++ b/lib/cosEventDomain/src/Makefile
-@@ -171,7 +171,7 @@ release_spec: opt
+@@ -172,7 +172,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -88,10 +88,10 @@ index b4b74bd..420f566 100644
$(INSTALL_DATA) $(EXTERNAL_GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosFileTransfer/src/Makefile b/lib/cosFileTransfer/src/Makefile
-index 9d3abb9..c3d83a5 100644
+index f9107ff..74d337d 100644
--- a/lib/cosFileTransfer/src/Makefile
+++ b/lib/cosFileTransfer/src/Makefile
-@@ -179,9 +179,7 @@ release_spec: opt
+@@ -180,9 +180,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -103,10 +103,10 @@ index 9d3abb9..c3d83a5 100644
release_docs_spec:
diff --git a/lib/cosNotification/src/Makefile b/lib/cosNotification/src/Makefile
-index 13153bd..0860700 100644
+index 72b063f..0fdb82e 100644
--- a/lib/cosNotification/src/Makefile
+++ b/lib/cosNotification/src/Makefile
-@@ -370,8 +370,7 @@ release_spec: opt
+@@ -371,8 +371,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -117,10 +117,10 @@ index 13153bd..0860700 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosProperty/src/Makefile b/lib/cosProperty/src/Makefile
-index d7b75d8..fba8746 100644
+index cd559e1..bdf035e 100644
--- a/lib/cosProperty/src/Makefile
+++ b/lib/cosProperty/src/Makefile
-@@ -179,8 +179,7 @@ release_spec: opt
+@@ -180,8 +180,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -131,10 +131,10 @@ index d7b75d8..fba8746 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosTime/src/Makefile b/lib/cosTime/src/Makefile
-index 0ab2b41..c29caeb 100644
+index 7a14db6..4b55398 100644
--- a/lib/cosTime/src/Makefile
+++ b/lib/cosTime/src/Makefile
-@@ -198,8 +198,7 @@ release_spec: opt
+@@ -199,8 +199,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -145,10 +145,10 @@ index 0ab2b41..c29caeb 100644
$(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/cosTransactions/src/Makefile b/lib/cosTransactions/src/Makefile
-index 7b4a9cf..290707c 100644
+index 90e1e51..05826e0 100644
--- a/lib/cosTransactions/src/Makefile
+++ b/lib/cosTransactions/src/Makefile
-@@ -173,7 +173,7 @@ release_spec: opt
+@@ -174,7 +174,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -158,10 +158,10 @@ index 7b4a9cf..290707c 100644
$(INSTALL_DATA) $(EXTERNAL_GEN_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/crypto/src/Makefile b/lib/crypto/src/Makefile
-index c185c15..68bacba 100644
+index 6e4008e..c2d00fc 100644
--- a/lib/crypto/src/Makefile
+++ b/lib/crypto/src/Makefile
-@@ -81,8 +81,6 @@ docs:
+@@ -82,8 +82,6 @@ docs:
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -171,10 +171,10 @@ index c185c15..68bacba 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) \
$(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/debugger/src/Makefile b/lib/debugger/src/Makefile
-index d61519f..bfdb0c9 100644
+index f115f49..e7dc360 100644
--- a/lib/debugger/src/Makefile
+++ b/lib/debugger/src/Makefile
-@@ -116,7 +116,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -117,7 +117,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -184,10 +184,10 @@ index d61519f..bfdb0c9 100644
$(INSTALL_DATA) $(TARGET_FILES) $(TARGET_TOOLBOX_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/dialyzer/src/Makefile b/lib/dialyzer/src/Makefile
-index 91fbdca..01fb30c 100644
+index 770af21..4f8a6d8 100644
--- a/lib/dialyzer/src/Makefile
+++ b/lib/dialyzer/src/Makefile
-@@ -151,7 +151,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -152,7 +152,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -197,10 +197,10 @@ index 91fbdca..01fb30c 100644
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/diameter/src/Makefile b/lib/diameter/src/Makefile
-index 9afccf2..107d65b 100644
+index e0bbbdf..10771b2 100644
--- a/lib/diameter/src/Makefile
+++ b/lib/diameter/src/Makefile
-@@ -250,11 +250,8 @@ release_spec: opt
+@@ -251,11 +251,8 @@ release_spec: opt
$(MAKE) $(EXAMPLE_DIRS:%/=release_examples_%)
$(TARGET_DIRS:%/=release_src_%): release_src_%:
@@ -228,10 +228,10 @@ index 4e5a418..c0bb0c3 100644
release_docs_spec:
diff --git a/lib/eldap/src/Makefile b/lib/eldap/src/Makefile
-index 2e1110e..b7f9b09 100644
+index cd3c102..b55c513 100644
--- a/lib/eldap/src/Makefile
+++ b/lib/eldap/src/Makefile
-@@ -98,10 +98,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -99,10 +99,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
@@ -243,10 +243,10 @@ index 2e1110e..b7f9b09 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/erl_docgen/src/Makefile b/lib/erl_docgen/src/Makefile
-index ef96f5d..d9a2f0d 100644
+index 7d41506..3f3562f 100644
--- a/lib/erl_docgen/src/Makefile
+++ b/lib/erl_docgen/src/Makefile
-@@ -89,8 +89,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -90,8 +90,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -256,10 +256,10 @@ index ef96f5d..d9a2f0d 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/et/src/Makefile b/lib/et/src/Makefile
-index 377e593..668e278 100644
+index 461a52d..1f2e885 100644
--- a/lib/et/src/Makefile
+++ b/lib/et/src/Makefile
-@@ -108,7 +108,6 @@ release_spec: opt
+@@ -109,7 +109,6 @@ release_spec: opt
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -268,7 +268,7 @@ index 377e593..668e278 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/eunit/src/Makefile b/lib/eunit/src/Makefile
-index 47aef10..78ddc74 100644
+index 86a6d88..5732fd8 100644
--- a/lib/eunit/src/Makefile
+++ b/lib/eunit/src/Makefile
@@ -120,7 +120,6 @@ release_spec: opt
@@ -280,10 +280,10 @@ index 47aef10..78ddc74 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include"
diff --git a/lib/gs/src/Makefile b/lib/gs/src/Makefile
-index f0200ca..86d3f74 100644
+index ff3080e..60337dd 100644
--- a/lib/gs/src/Makefile
+++ b/lib/gs/src/Makefile
-@@ -108,8 +108,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -109,8 +109,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -295,10 +295,10 @@ index f0200ca..86d3f74 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/priv/bitmap"
diff --git a/lib/hipe/cerl/Makefile b/lib/hipe/cerl/Makefile
-index d13dfb3..b09d62b 100644
+index 0938010..134ed7b 100644
--- a/lib/hipe/cerl/Makefile
+++ b/lib/hipe/cerl/Makefile
-@@ -101,7 +101,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/cerl"
@@ -308,10 +308,10 @@ index d13dfb3..b09d62b 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/flow/Makefile b/lib/hipe/flow/Makefile
-index 75e156b..5e394ca 100644
+index f0af6ac..16b512e 100644
--- a/lib/hipe/flow/Makefile
+++ b/lib/hipe/flow/Makefile
-@@ -101,7 +101,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/flow"
@@ -321,10 +321,10 @@ index 75e156b..5e394ca 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/icode/Makefile b/lib/hipe/icode/Makefile
-index 87015aa..84f870d 100644
+index a82e28c..f364a53 100644
--- a/lib/hipe/icode/Makefile
+++ b/lib/hipe/icode/Makefile
-@@ -119,7 +119,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -120,7 +120,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/icode"
@@ -334,10 +334,10 @@ index 87015aa..84f870d 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/llvm/Makefile b/lib/hipe/llvm/Makefile
-index 92f3789..82f3e77 100644
+index f6f6f6b..4369923 100644
--- a/lib/hipe/llvm/Makefile
+++ b/lib/hipe/llvm/Makefile
-@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -103,7 +103,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) $(RELSYSDIR)/llvm
@@ -347,10 +347,10 @@ index 92f3789..82f3e77 100644
$(INSTALL_DATA) $(TARGET_FILES) $(RELSYSDIR)/ebin
diff --git a/lib/hipe/main/Makefile b/lib/hipe/main/Makefile
-index 66e4c3e..2f11670 100644
+index d44be2d..ed81f10 100644
--- a/lib/hipe/main/Makefile
+++ b/lib/hipe/main/Makefile
-@@ -117,7 +117,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -118,7 +118,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DATA) ../vsn.mk "$(RELSYSDIR)"
$(INSTALL_DIR) "$(RELSYSDIR)/main"
@@ -360,10 +360,10 @@ index 66e4c3e..2f11670 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/misc/Makefile b/lib/hipe/misc/Makefile
-index 16166f5..0ba5845 100644
+index be5c9bc..d40b322 100644
--- a/lib/hipe/misc/Makefile
+++ b/lib/hipe/misc/Makefile
-@@ -101,7 +101,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/misc"
@@ -373,10 +373,10 @@ index 16166f5..0ba5845 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/rtl/Makefile b/lib/hipe/rtl/Makefile
-index 751e876..98b7911 100644
+index 1bf52fe..5049bec 100644
--- a/lib/hipe/rtl/Makefile
+++ b/lib/hipe/rtl/Makefile
-@@ -104,7 +104,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -105,7 +105,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/rtl"
@@ -386,10 +386,10 @@ index 751e876..98b7911 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/hipe/util/Makefile b/lib/hipe/util/Makefile
-index a5ee232..f03e41d 100644
+index 4a78ad7..1b1ce05 100644
--- a/lib/hipe/util/Makefile
+++ b/lib/hipe/util/Makefile
-@@ -49,7 +49,6 @@ HIPE_MODULES =
+@@ -50,7 +50,6 @@ HIPE_MODULES =
endif
MODULES = hipe_timing hipe_dot hipe_digraph $(HIPE_MODULES)
@@ -397,7 +397,7 @@ index a5ee232..f03e41d 100644
ERL_FILES= $(MODULES:%=%.erl)
TARGET_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR))
DOC_FILES= $(MODULES:%=$(DOCS)/%.html)
-@@ -103,8 +102,6 @@ $(DOCS)/%.html:%.erl
+@@ -104,8 +103,6 @@ $(DOCS)/%.html:%.erl
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -407,10 +407,10 @@ index a5ee232..f03e41d 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/ic/src/Makefile b/lib/ic/src/Makefile
-index e8769d2..965d0e7 100644
+index a6da81a..60870be 100644
--- a/lib/ic/src/Makefile
+++ b/lib/ic/src/Makefile
-@@ -199,7 +199,7 @@ release_spec: opt
+@@ -200,7 +200,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -420,10 +420,10 @@ index e8769d2..965d0e7 100644
$(INSTALL_DIR) "$(RELSYSDIR)/examples/c-client"
$(INSTALL_DATA) $(CCL_EX_FILES) "$(RELSYSDIR)/examples/c-client"
diff --git a/lib/inets/src/ftp/Makefile b/lib/inets/src/ftp/Makefile
-index 2c3d2b6..de0450e 100644
+index f8daa2b..48e5d49 100644
--- a/lib/inets/src/ftp/Makefile
+++ b/lib/inets/src/ftp/Makefile
-@@ -90,7 +90,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -91,7 +91,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/ftp"
@@ -433,10 +433,10 @@ index 2c3d2b6..de0450e 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/http_client/Makefile b/lib/inets/src/http_client/Makefile
-index f0d4ce1..35c4ffc 100644
+index cb97b52..cb13dfb 100644
--- a/lib/inets/src/http_client/Makefile
+++ b/lib/inets/src/http_client/Makefile
-@@ -91,7 +91,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -92,7 +92,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/http_client"
@@ -446,10 +446,10 @@ index f0d4ce1..35c4ffc 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/http_lib/Makefile b/lib/inets/src/http_lib/Makefile
-index 51167b3..a623824 100644
+index 4a4eef9..c779c8e 100644
--- a/lib/inets/src/http_lib/Makefile
+++ b/lib/inets/src/http_lib/Makefile
-@@ -89,7 +89,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -90,7 +90,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/http_lib"
@@ -459,23 +459,23 @@ index 51167b3..a623824 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/http_server/Makefile b/lib/inets/src/http_server/Makefile
-index 2660d04..c873a27 100644
+index 1c05d45..88f9f62 100644
--- a/lib/inets/src/http_server/Makefile
+++ b/lib/inets/src/http_server/Makefile
-@@ -126,7 +126,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -135,7 +135,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/http_server"
- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src/http_server"
+ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/http_server"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
- $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
+ $(INSTALL_DATA) $(TARGET_FILES) $(BEHAVIOUR_TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/inets_app/Makefile b/lib/inets/src/inets_app/Makefile
-index 22426ee..0b0cfb8 100644
+index 82cda6a..edfebd2 100644
--- a/lib/inets/src/inets_app/Makefile
+++ b/lib/inets/src/inets_app/Makefile
-@@ -113,7 +113,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -116,7 +116,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/inets_app"
@@ -485,10 +485,10 @@ index 22426ee..0b0cfb8 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/inets/src/tftp/Makefile b/lib/inets/src/tftp/Makefile
-index b368b12..5eddaf0 100644
+index d5d94e1..5583064 100644
--- a/lib/inets/src/tftp/Makefile
+++ b/lib/inets/src/tftp/Makefile
-@@ -95,7 +95,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -96,7 +96,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/tftp"
@@ -498,10 +498,10 @@ index b368b12..5eddaf0 100644
$(INSTALL_DATA) $(TARGET_FILES) $(BEHAVIOUR_TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/kernel/src/Makefile b/lib/kernel/src/Makefile
-index c7c70ad..3e1792f 100644
+index 57daceb..1cebd80 100644
--- a/lib/kernel/src/Makefile
+++ b/lib/kernel/src/Makefile
-@@ -199,7 +199,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -200,7 +200,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -510,10 +510,10 @@ index c7c70ad..3e1792f 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/megaco/src/app/Makefile b/lib/megaco/src/app/Makefile
-index d18da53..4a9f4d2 100644
+index 8f8e6ec..9e0bc82 100644
--- a/lib/megaco/src/app/Makefile
+++ b/lib/megaco/src/app/Makefile
-@@ -113,7 +113,7 @@ release_spec: opt
+@@ -114,7 +114,7 @@ release_spec: opt
$(INSTALL_DATA) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/app"
@@ -523,10 +523,10 @@ index d18da53..4a9f4d2 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/megaco/src/binary/Makefile b/lib/megaco/src/binary/Makefile
-index c1fd66b..0699ffa 100644
+index 711fbb7..1db4593 100644
--- a/lib/megaco/src/binary/Makefile
+++ b/lib/megaco/src/binary/Makefile
-@@ -175,7 +175,7 @@ release_spec: opt
+@@ -176,7 +176,7 @@ release_spec: opt
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/binary"
@@ -536,10 +536,10 @@ index c1fd66b..0699ffa 100644
release_docs_spec:
diff --git a/lib/megaco/src/engine/Makefile b/lib/megaco/src/engine/Makefile
-index 7cecef1..841a88a 100644
+index 208942c..d5b7218 100644
--- a/lib/megaco/src/engine/Makefile
+++ b/lib/megaco/src/engine/Makefile
-@@ -101,7 +101,7 @@ release_spec: opt
+@@ -102,7 +102,7 @@ release_spec: opt
$(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/engine"
@@ -549,23 +549,22 @@ index 7cecef1..841a88a 100644
diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in
-index bd62e8b..cce5a8d 100644
+index 39be02a..8c6ba31 100644
--- a/lib/megaco/src/flex/Makefile.in
+++ b/lib/megaco/src/flex/Makefile.in
-@@ -267,8 +267,6 @@ release_spec: opt
+@@ -268,7 +268,6 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src/flex"
$(INSTALL_DIR) "$(RELSYSDIR)/priv/lib"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/flex"
-- $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
+ $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
ifeq ($(ENABLE_MEGACO_FLEX_SCANNER),true)
$(INSTALL_DATA) $(FLEX_FILES) "$(RELSYSDIR)/src/flex"
- $(INSTALL_PROGRAM) $(SOLIBS) "$(RELSYSDIR)/priv/lib"
diff --git a/lib/megaco/src/tcp/Makefile b/lib/megaco/src/tcp/Makefile
-index 0c30aba..aa553ff 100644
+index 0c546a8..78f659a 100644
--- a/lib/megaco/src/tcp/Makefile
+++ b/lib/megaco/src/tcp/Makefile
-@@ -93,7 +93,7 @@ release_spec: opt
+@@ -94,7 +94,7 @@ release_spec: opt
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/tcp"
@@ -575,10 +574,10 @@ index 0c30aba..aa553ff 100644
release_docs_spec:
diff --git a/lib/megaco/src/text/Makefile b/lib/megaco/src/text/Makefile
-index cab4256..d5cf217 100644
+index f4fc56a..1cc73fd 100644
--- a/lib/megaco/src/text/Makefile
+++ b/lib/megaco/src/text/Makefile
-@@ -134,7 +134,7 @@ release_spec: opt
+@@ -135,7 +135,7 @@ release_spec: opt
$(INSTALL_DATA) $(BEAM_TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/text"
@@ -588,10 +587,10 @@ index cab4256..d5cf217 100644
release_docs_spec:
diff --git a/lib/megaco/src/udp/Makefile b/lib/megaco/src/udp/Makefile
-index 9486804..ea4830c 100644
+index 7288c20..aefd9f3 100644
--- a/lib/megaco/src/udp/Makefile
+++ b/lib/megaco/src/udp/Makefile
-@@ -93,7 +93,7 @@ release_spec: opt
+@@ -94,7 +94,7 @@ release_spec: opt
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/udp"
@@ -601,10 +600,10 @@ index 9486804..ea4830c 100644
release_docs_spec:
diff --git a/lib/mnesia/src/Makefile b/lib/mnesia/src/Makefile
-index ac38fa0..20bce7e 100644
+index dae0df7..6294ae9 100644
--- a/lib/mnesia/src/Makefile
+++ b/lib/mnesia/src/Makefile
-@@ -132,7 +132,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -133,7 +133,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -614,10 +613,10 @@ index ac38fa0..20bce7e 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/observer/src/Makefile b/lib/observer/src/Makefile
-index c120865..6831d23 100644
+index 2d42510..7579014 100644
--- a/lib/observer/src/Makefile
+++ b/lib/observer/src/Makefile
-@@ -149,7 +149,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -152,7 +152,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -626,10 +625,10 @@ index c120865..6831d23 100644
$(INSTALL_DIR) "$(RELSYSDIR)/examples"
$(INSTALL_DATA) $(EXAMPLE_FILES) "$(RELSYSDIR)/examples"
diff --git a/lib/odbc/src/Makefile b/lib/odbc/src/Makefile
-index bfbda8a..6e4ad54 100644
+index 51c9ed3..50a4c10 100644
--- a/lib/odbc/src/Makefile
+++ b/lib/odbc/src/Makefile
-@@ -109,7 +109,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -110,7 +110,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -639,10 +638,10 @@ index bfbda8a..6e4ad54 100644
$(INSTALL_DATA) $(EXT_HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/orber/COSS/CosNaming/Makefile b/lib/orber/COSS/CosNaming/Makefile
-index 8140620..73df530 100644
+index 0eca8dd..18d9627 100644
--- a/lib/orber/COSS/CosNaming/Makefile
+++ b/lib/orber/COSS/CosNaming/Makefile
-@@ -144,8 +144,8 @@ release_spec: opt
+@@ -145,8 +145,8 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/COSS/CosNaming"
@@ -654,10 +653,10 @@ index 8140620..73df530 100644
release_docs_spec:
diff --git a/lib/orber/src/Makefile b/lib/orber/src/Makefile
-index 398e481..f079e77 100644
+index 30b74c4..9c6708f 100644
--- a/lib/orber/src/Makefile
+++ b/lib/orber/src/Makefile
-@@ -252,7 +252,7 @@ release_spec: opt
+@@ -253,7 +253,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -667,10 +666,10 @@ index 398e481..f079e77 100644
$(INSTALL_DATA) $(EXTERNAL_HRL_FILES) $(GEN_HRL_FILES_EXT) "$(RELSYSDIR)/include"
diff --git a/lib/os_mon/src/Makefile b/lib/os_mon/src/Makefile
-index 4e78cf8..69d434c 100644
+index 1003d24..1b12154 100644
--- a/lib/os_mon/src/Makefile
+++ b/lib/os_mon/src/Makefile
-@@ -104,7 +104,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -105,7 +105,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -679,10 +678,10 @@ index 4e78cf8..69d434c 100644
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/ose/src/Makefile b/lib/ose/src/Makefile
-index 88f8957..ab08a88 100644
+index a89e939..224d944 100644
--- a/lib/ose/src/Makefile
+++ b/lib/ose/src/Makefile
-@@ -93,9 +93,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -94,9 +94,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -693,10 +692,10 @@ index 88f8957..ab08a88 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/otp_mibs/src/Makefile b/lib/otp_mibs/src/Makefile
-index 6096240..cbc41e6 100644
+index 03892cd..c3ad326 100644
--- a/lib/otp_mibs/src/Makefile
+++ b/lib/otp_mibs/src/Makefile
-@@ -95,8 +95,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -96,8 +96,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -706,10 +705,10 @@ index 6096240..cbc41e6 100644
$(INSTALL_DATA) $(TARGETS) "$(RELSYSDIR)/ebin"
diff --git a/lib/parsetools/src/Makefile b/lib/parsetools/src/Makefile
-index 2ee2285..ea075ed 100644
+index dbecdd2..1d45801 100644
--- a/lib/parsetools/src/Makefile
+++ b/lib/parsetools/src/Makefile
-@@ -90,8 +90,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -91,8 +91,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -719,10 +718,10 @@ index 2ee2285..ea075ed 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/percept/src/Makefile b/lib/percept/src/Makefile
-index 0282d63..5902da3 100644
+index 9b963e0..deeb75c 100644
--- a/lib/percept/src/Makefile
+++ b/lib/percept/src/Makefile
-@@ -96,7 +96,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -97,7 +97,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -731,10 +730,10 @@ index 0282d63..5902da3 100644
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
# $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/public_key/asn1/Makefile b/lib/public_key/asn1/Makefile
-index c1b3bc8..3d021cf 100644
+index 7474297..a510658 100644
--- a/lib/public_key/asn1/Makefile
+++ b/lib/public_key/asn1/Makefile
-@@ -95,8 +95,8 @@ release_spec: opt
+@@ -96,8 +96,8 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/asn1"
@@ -746,19 +745,10 @@ index c1b3bc8..3d021cf 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/public_key/src/Makefile b/lib/public_key/src/Makefile
-index 09393e8..eb4c54d 100644
+index 786f244..0463c67 100644
--- a/lib/public_key/src/Makefile
+++ b/lib/public_key/src/Makefile
-@@ -49,8 +49,6 @@ MODULES = \
-
- HRL_FILES = $(INCLUDE)/public_key.hrl
-
--INTERNAL_HRL_FILES =
--
- ERL_FILES = $(MODULES:%=%.erl)
-
- TARGET_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR))
-@@ -103,8 +101,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -109,8 +109,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -768,10 +758,10 @@ index 09393e8..eb4c54d 100644
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/reltool/src/Makefile b/lib/reltool/src/Makefile
-index b8387ff..2012af9 100644
+index 1fea415..a756470 100644
--- a/lib/reltool/src/Makefile
+++ b/lib/reltool/src/Makefile
-@@ -99,7 +99,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -100,7 +100,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -781,10 +771,10 @@ index b8387ff..2012af9 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/runtime_tools/src/Makefile b/lib/runtime_tools/src/Makefile
-index 8d2bcfe..d1a9cac 100644
+index 99b90f9..25b3ebb 100644
--- a/lib/runtime_tools/src/Makefile
+++ b/lib/runtime_tools/src/Makefile
-@@ -96,8 +96,6 @@ docs:
+@@ -97,8 +97,6 @@ docs:
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -794,10 +784,10 @@ index 8d2bcfe..d1a9cac 100644
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/examples"
diff --git a/lib/sasl/src/Makefile b/lib/sasl/src/Makefile
-index ab2d3a3..bb53a67 100644
+index 7ff6a03..a304900 100644
--- a/lib/sasl/src/Makefile
+++ b/lib/sasl/src/Makefile
-@@ -92,7 +92,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -93,7 +93,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -806,10 +796,10 @@ index ab2d3a3..bb53a67 100644
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/agent/Makefile b/lib/snmp/src/agent/Makefile
-index beed696..752072d 100644
+index 89037b3..01de885 100644
--- a/lib/snmp/src/agent/Makefile
+++ b/lib/snmp/src/agent/Makefile
-@@ -130,7 +130,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -131,7 +131,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/agent"
@@ -819,10 +809,10 @@ index beed696..752072d 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/app/Makefile b/lib/snmp/src/app/Makefile
-index b8cc4b8..d806efb 100644
+index 7972d95..78a9f2b 100644
--- a/lib/snmp/src/app/Makefile
+++ b/lib/snmp/src/app/Makefile
-@@ -131,7 +131,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -132,7 +132,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/app"
@@ -832,10 +822,10 @@ index b8cc4b8..d806efb 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/compile/Makefile b/lib/snmp/src/compile/Makefile
-index f63fc18..9759451 100644
+index 54f2e22..488faa4 100644
--- a/lib/snmp/src/compile/Makefile
+++ b/lib/snmp/src/compile/Makefile
-@@ -122,7 +122,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -123,7 +123,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/compiler"
@@ -845,10 +835,10 @@ index f63fc18..9759451 100644
$(INSTALL_DATA) $(EBIN_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/bin"
diff --git a/lib/snmp/src/manager/Makefile b/lib/snmp/src/manager/Makefile
-index c76dbac..548823a 100644
+index 382f83b..db50c26 100644
--- a/lib/snmp/src/manager/Makefile
+++ b/lib/snmp/src/manager/Makefile
-@@ -113,7 +113,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -114,7 +114,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/manager"
@@ -858,10 +848,10 @@ index c76dbac..548823a 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/snmp/src/misc/Makefile b/lib/snmp/src/misc/Makefile
-index 698c341..3344a0c 100644
+index c71ecf9..d17e699 100644
--- a/lib/snmp/src/misc/Makefile
+++ b/lib/snmp/src/misc/Makefile
-@@ -111,7 +111,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -112,7 +112,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/src/misc"
@@ -871,7 +861,7 @@ index 698c341..3344a0c 100644
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/ssh/src/Makefile b/lib/ssh/src/Makefile
-index 90d7110..e725c6c 100644
+index b44c8ee..8f8b58d 100644
--- a/lib/ssh/src/Makefile
+++ b/lib/ssh/src/Makefile
@@ -135,7 +135,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
@@ -884,10 +874,10 @@ index 90d7110..e725c6c 100644
$(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \
$(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/ssl/src/Makefile b/lib/ssl/src/Makefile
-index 0c00a65..acec405 100644
+index 790328d..db08822 100644
--- a/lib/ssl/src/Makefile
+++ b/lib/ssl/src/Makefile
-@@ -137,7 +137,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -141,7 +141,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -897,10 +887,10 @@ index 0c00a65..acec405 100644
$(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \
$(APPUP_TARGET) "$(RELSYSDIR)/ebin"
diff --git a/lib/stdlib/src/Makefile b/lib/stdlib/src/Makefile
-index 9ab2cd4..876bfd2 100644
+index 9f4a446..50ac11e 100644
--- a/lib/stdlib/src/Makefile
+++ b/lib/stdlib/src/Makefile
-@@ -203,7 +203,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -207,7 +207,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -909,23 +899,23 @@ index 9ab2cd4..876bfd2 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/syntax_tools/src/Makefile b/lib/syntax_tools/src/Makefile
-index c9fbad8..2fc7f18 100644
+index 2e91adf..0085fca 100644
--- a/lib/syntax_tools/src/Makefile
+++ b/lib/syntax_tools/src/Makefile
-@@ -82,8 +82,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -100,8 +100,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(OBJECTS) "$(RELSYSDIR)/ebin"
- $(INSTALL_DIR) "$(RELSYSDIR)/src"
- $(INSTALL_DATA) $(SOURCES) "$(RELSYSDIR)/src"
-
- release_docs_spec:
+ $(INSTALL_DIR) "$(RELSYSDIR)/include"
+ $(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include"
diff --git a/lib/test_server/src/Makefile b/lib/test_server/src/Makefile
-index 35bbad3..deb7caf 100644
+index 6a26ee2..7336477 100644
--- a/lib/test_server/src/Makefile
+++ b/lib/test_server/src/Makefile
-@@ -123,7 +123,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -124,7 +124,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -934,10 +924,10 @@ index 35bbad3..deb7caf 100644
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
diff --git a/lib/tools/src/Makefile b/lib/tools/src/Makefile
-index e606b97..1beb8cc 100644
+index 9fcfb79..b30b173 100644
--- a/lib/tools/src/Makefile
+++ b/lib/tools/src/Makefile
-@@ -106,7 +106,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
+@@ -107,7 +107,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -947,10 +937,10 @@ index e606b97..1beb8cc 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/typer/src/Makefile b/lib/typer/src/Makefile
-index a7059de..0b1ae2a 100644
+index 620ca21..9c9390e 100644
--- a/lib/typer/src/Makefile
+++ b/lib/typer/src/Makefile
-@@ -101,9 +101,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -102,9 +102,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -961,10 +951,10 @@ index a7059de..0b1ae2a 100644
$(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin"
diff --git a/lib/webtool/src/Makefile b/lib/webtool/src/Makefile
-index af565c8..6c65b26 100644
+index a5a8eaf..be80ba7 100644
--- a/lib/webtool/src/Makefile
+++ b/lib/webtool/src/Makefile
-@@ -87,8 +87,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
+@@ -88,8 +88,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
@@ -974,10 +964,10 @@ index af565c8..6c65b26 100644
$(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/wx/src/Makefile b/lib/wx/src/Makefile
-index 26574ed..266a5d6 100644
+index b345e34..153a270 100644
--- a/lib/wx/src/Makefile
+++ b/lib/wx/src/Makefile
-@@ -121,9 +121,9 @@ $(EBIN)/%.beam: $(EGEN)/%.erl $(HEADER_FILES)
+@@ -122,9 +122,9 @@ $(EBIN)/%.beam: $(EGEN)/%.erl $(HEADER_FILES)
include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/src"
@@ -990,10 +980,10 @@ index 26574ed..266a5d6 100644
$(INSTALL_DATA) $(EXT_HRL) "$(RELSYSDIR)/include"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
diff --git a/lib/xmerl/src/Makefile b/lib/xmerl/src/Makefile
-index d5ce3fe..e21e4b1 100644
+index f8f0320..099513e 100644
--- a/lib/xmerl/src/Makefile
+++ b/lib/xmerl/src/Makefile
-@@ -217,9 +217,7 @@ release_spec: opt
+@@ -218,9 +218,7 @@ release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/src"
diff --git a/otp-0007-Split-off-webtool-dependency-from-tools.patch b/otp-0007-Split-off-webtool-dependency-from-tools.patch
index f2de8ac..9a06884 100644
--- a/otp-0007-Split-off-webtool-dependency-from-tools.patch
+++ b/otp-0007-Split-off-webtool-dependency-from-tools.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Split off webtool dependency from tools
Signed-off-by: Peter Lemenkov
diff --git a/lib/tools/src/cover_web.erl b/lib/tools/src/cover_web.erl
-index 69f2f3b..9085300 100644
+index ae8b3f2..539ca96 100644
--- a/lib/tools/src/cover_web.erl
+++ b/lib/tools/src/cover_web.erl
-@@ -50,14 +50,25 @@
+@@ -51,14 +51,25 @@
%%%----------------------------------------------------------------------
%% Start webtool and webcover from erlang shell
start() ->
diff --git a/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch b/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch
new file mode 100644
index 0000000..9a60730
--- /dev/null
+++ b/otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch
@@ -0,0 +1,31 @@
+From: John Eckersberg
+Date: Wed, 16 Dec 2015 11:03:42 -0500
+Subject: [PATCH] Add patch to crash dump on large distribution
+
+https://bugzilla.redhat.com/show_bug.cgi?id=1291822
+https://bugzilla.redhat.com/show_bug.cgi?id=1291855
+https://bugzilla.redhat.com/show_bug.cgi?id=1291856
+https://bugzilla.redhat.com/show_bug.cgi?id=1291857
+
+diff --git a/erts/emulator/beam/dist.c b/erts/emulator/beam/dist.c
+index 7be2b77..c3b6a7d 100644
+--- a/erts/emulator/beam/dist.c
++++ b/erts/emulator/beam/dist.c
+@@ -1980,7 +1980,7 @@ dist_port_command(Port *prt, ErtsDistOutputBuf *obuf)
+ ERTS_SMP_LC_ASSERT(erts_lc_is_port_locked(prt));
+
+ if (size > (Uint) INT_MAX)
+- erl_exit(ERTS_ABORT_EXIT,
++ erl_exit(ERTS_DUMP_EXIT,
+ "Absurdly large distribution output data buffer "
+ "(%beu bytes) passed.\n",
+ size);
+@@ -2020,7 +2020,7 @@ dist_port_commandv(Port *prt, ErtsDistOutputBuf *obuf)
+ ERTS_SMP_LC_ASSERT(erts_lc_is_port_locked(prt));
+
+ if (size > (Uint) INT_MAX)
+- erl_exit(ERTS_ABORT_EXIT,
++ erl_exit(ERTS_DUMP_EXIT,
+ "Absurdly large distribution output data buffer "
+ "(%beu bytes) passed.\n",
+ size);
diff --git a/otp-0008-Introduce-os-getenv-2.patch b/otp-0008-Introduce-os-getenv-2.patch
deleted file mode 100644
index 6c48db2..0000000
--- a/otp-0008-Introduce-os-getenv-2.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From: Peter Lemenkov
-Date: Sat, 8 Nov 2014 15:11:04 +0300
-Subject: [PATCH] Introduce os:getenv/2
-
-Signed-off-by: Peter Lemenkov
-
-diff --git a/lib/kernel/doc/src/os.xml b/lib/kernel/doc/src/os.xml
-index 2b57e75..8b85f24 100644
---- a/lib/kernel/doc/src/os.xml
-+++ b/lib/kernel/doc/src/os.xml
-@@ -100,6 +100,19 @@ DirOut = os:cmd("dir"), % on Win32 platform
-
-
-
-+
-+ Get the value of an environment variable
-+
-+
Returns the Value of the environment variable
-+ VarName, or DefaultValue if the environment variable
-+ is undefined.
-+
If Unicode file name encoding is in effect (see the erl manual
-+ page), the strings (both VarName and
-+ Value) may contain characters with codepoints > 255.
-+
-+
-+
-
- Return the process identifier of the emulator process
-
-diff --git a/lib/kernel/src/os.erl b/lib/kernel/src/os.erl
-index 187fd00..8aaf13b 100644
---- a/lib/kernel/src/os.erl
-+++ b/lib/kernel/src/os.erl
-@@ -26,7 +26,7 @@
-
- %%% BIFs
-
---export([getenv/0, getenv/1, getpid/0, putenv/2, timestamp/0, unsetenv/1]).
-+-export([getenv/0, getenv/1, getenv/2, getpid/0, putenv/2, timestamp/0, unsetenv/1]).
-
- -spec getenv() -> [string()].
-
-@@ -39,6 +39,19 @@ getenv() -> erlang:nif_error(undef).
- getenv(_) ->
- erlang:nif_error(undef).
-
-+-spec getenv(VarName, DefaultValue) -> Value when
-+ VarName :: string(),
-+ DefaultValue :: string(),
-+ Value :: string().
-+
-+getenv(VarName, DefaultValue) ->
-+ case os:getenv(VarName) of
-+ false ->
-+ DefaultValue;
-+ Value ->
-+ Value
-+ end.
-+
- -spec getpid() -> Value when
- Value :: string().
-
diff --git a/otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch b/otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
deleted file mode 100644
index fa55663..0000000
--- a/otp-0009-Patch-removes-support-for-SSLv3-protocol-because-it-.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From: Sergei Golovan
-Date: Sun, 30 Nov 2014 20:20:41 +0300
-Subject: [PATCH] Patch removes support for SSLv3 protocol because it is proved
- to be insecure and nobody should use it anymore.
-
-
-diff --git a/lib/ssl/doc/src/ssl.xml b/lib/ssl/doc/src/ssl.xml
-index b53344e..b245621 100644
---- a/lib/ssl/doc/src/ssl.xml
-+++ b/lib/ssl/doc/src/ssl.xml
-@@ -123,7 +123,7 @@
-
-
Protocol that will be supported by started clients and
- servers. If this option is not set it will default to all
-@@ -58,6 +58,9 @@
- Note that this option may be overridden by the version option
- to ssl:connect/[2,3] and ssl:listen/2.
-
-+
For Debian GNU/Linux distribution the sslv3 protocol was
-+ disabled due to its security issues.
-+
This option only affects TLS-1.0 connections.
-+ If set to false it disables the block cipher padding check
-+ to be able to interoperate with legacy software.
-+
-+
-+
Using this option makes TLS vulnerable to
-+ the Poodle attack