diff --git a/.gitignore b/.gitignore index 36e05df..79bb3a2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,69 @@ -/*.src.rpm -/*~ -/otp-OTP-*.tar.gz -/otp_doc_html_R*.tar.gz -/otp_doc_man_R*.tar.gz -/otp_src_R*.readme -/otp_src_R*.tar.gz +otp_src_R14A.tar.gz +/otp_src_R14B.tar.gz +/otp_doc_html_R14B.tar.gz +/otp_doc_man_R14B.tar.gz +/otp_doc_html_R14B01.tar.gz +/otp_doc_man_R14B01.tar.gz +/otp_src_R14B01.tar.gz +/otp_doc_html_R14B02.tar.gz +/otp_doc_man_R14B02.tar.gz +/otp_src_R14B02.tar.gz +/otp_src_R14B03.tar.gz +/otp_doc_html_R14B03.tar.gz +/otp_doc_man_R14B03.tar.gz +/otp_src_R14B04.tar.gz +/otp_doc_html_R14B04.tar.gz +/otp_doc_man_R14B04.tar.gz +/otp_doc_html_R15B.tar.gz +/otp_doc_man_R15B.tar.gz +/otp_src_R15B.tar.gz +/otp_doc_html_R15B01.tar.gz +/otp_doc_man_R15B01.tar.gz +/otp_src_R15B01.tar.gz +/otp_doc_html_R15B02.tar.gz +/otp_doc_man_R15B02.tar.gz +/otp_src_R15B02.tar.gz +/otp_doc_html_R15B03-1.tar.gz +/otp_doc_man_R15B03-1.tar.gz +/otp_src_R15B03-1.readme +/otp_src_R15B03-1.tar.gz +/otp_doc_html_R16A_RELEASE_CANDIDATE.tar.gz +/otp_doc_man_R16A_RELEASE_CANDIDATE.tar.gz +/otp_src_R16A_RELEASE_CANDIDATE.tar.gz +/otp_src_R16A_RELEASE_CANDIDATE.readme +/otp_src_R16B.tar.gz +/otp_doc_html_R16B.tar.gz +/otp_doc_man_R16B.tar.gz +/otp_src_R16B01.tar.gz +/otp_doc_html_R16B01.tar.gz +/otp_doc_man_R16B01.tar.gz +/otp_src_R16B01.readme +/otp_src_R16B02.tar.gz +/otp_doc_html_R16B02.tar.gz +/otp_doc_man_R16B02.tar.gz +/otp_src_R16B02.readme +/otp_src_R16B03.tar.gz +/otp_doc_html_R16B03.tar.gz +/otp_doc_man_R16B03.tar.gz +/otp_src_R16B03.readme +/otp_src_R16B03-1.readme +/otp_doc_html_R16B03-1.tar.gz +/otp_doc_man_R16B03-1.tar.gz +/otp_src_R16B03-1.tar.gz +/otp-OTP-17.2.1.tar.gz +/otp-OTP-17.2.2.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 +/otp-OTP-18.2.3.tar.gz +/otp-OTP-18.2.4.tar.gz +/otp-OTP-18.3.tar.gz +/otp-OTP-18.3.1.tar.gz +/otp-OTP-18.3.2.tar.gz +/otp-OTP-18.3.3.tar.gz +/otp-OTP-18.3.4.tar.gz +/otp-OTP-18.3.4.1.tar.gz +/otp-OTP-18.3.4.2.tar.gz +/otp-OTP-18.3.4.4.tar.gz +/otp-OTP-18.3.4.5.tar.gz diff --git a/epmd.socket b/epmd.socket index 34817e0..8eee066 100644 --- a/epmd.socket +++ b/epmd.socket @@ -2,7 +2,7 @@ Description=Erlang Port Mapper Daemon Activation Socket [Socket] -ListenStream=4369 +ListenStream=127.0.0.1:4369 Accept=false [Install] diff --git a/epmd@.socket b/epmd@.socket index f3e5338..5dda63d 100644 --- a/epmd@.socket +++ b/epmd@.socket @@ -2,7 +2,7 @@ Description=Erlang Port Mapper Daemon Activation Socket [Socket] -ListenStream=%I +ListenStream=%i:4369 Accept=false [Install] diff --git a/erlang.spec b/erlang.spec index 878fb41..2f3532f 100644 --- a/erlang.spec +++ b/erlang.spec @@ -1,23 +1,18 @@ -%global need_bootstrap_set 1 +%global need_bootstrap_set 0 %{!?need_bootstrap: %global need_bootstrap %{need_bootstrap_set}} -%ifarch %{arm} %{mips} riscv64 %{ix86} -# MIPS and RISC-V does not have all dependencies for fop yet. +%ifarch %{arm} # For some reason, fop hangs on arm, so for now don't generate docs by # default %bcond_with doc %else -# RHEL8 doesn't have fop -%if 0%{?rhel} > 7 -%bcond_with doc -%else %bcond_without doc %endif -%endif -# Compile with FIPS support by default -%bcond_without fips +%ifarch %{arm} %{ix86} x86_64 ppc %{power64} +%global __with_hipe 1 +%endif ## ## Optional components @@ -25,12 +20,8 @@ %global __with_emacs 1 %global __with_examples 1 -%ifarch %{java_arches} %global __with_java 1 -%else -%global __with_java 0 -%endif -%global __with_sources 1 +%global __with_tcltk 1 # # wxWidgets plugin blocks the following ones: # @@ -45,6 +36,10 @@ # * common_test # * megaco # +# dialyzer blocks: +# +# * typer +# # et blocks: # # * megaco @@ -52,6 +47,8 @@ # observer blocks: # # * common_test +# * test_server +# * webtool # # So finally we have to disable the following plugins: # @@ -62,19 +59,25 @@ # megaco # observer # reltool (*) +# test_server +# typer +# webtool # wx # %global __with_wxwidgets 1 Name: erlang -Version: 26.2.5.16 -Release: 1%{?dist} +Version: 18.3.4.5 +Release: 4%{?dist} Summary: General-purpose programming language and runtime environment -License: Apache-2.0 -URL: https://www.erlang.org -VCS: git:https://github.com/erlang/otp.git +Group: Development/Languages +License: ASL 2.0 +URL: http://www.erlang.org +%if 0%{?el7}%{?fedora} +VCS: scm:git:https://github.com/erlang/otp +%endif Source0: https://github.com/erlang/otp/archive/OTP-%{version}/otp-OTP-%{version}.tar.gz Source5: epmd.service Source6: epmd.socket @@ -98,23 +101,57 @@ Source999: otp-get-patches.sh # for some semi-automatic patch update assistance. # # start of autogenerated patch tag list +# Fedora specific patch +# Do not format man-pages and do not install miscellaneous Patch1: otp-0001-Do-not-format-man-pages-and-do-not-install-miscellan.patch +# Fedora specific patch +# Remove rpath Patch2: otp-0002-Remove-rpath.patch +# Fedora specific patch +# Do not install C sources Patch3: otp-0003-Do-not-install-C-sources.patch +# Fedora specific patch +# Do not install Java sources Patch4: otp-0004-Do-not-install-Java-sources.patch +# Fedora specific patch +# Do not install nteventlog and related doc-files on non-win32 Patch5: otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch -Patch6: otp-0006-Add-extra-search-directory.patch -Patch7: otp-0007-Avoid-forking-sed-to-get-basename.patch -Patch8: otp-0008-Load-man-pages-from-system-wide-directory.patch -Patch9: otp-0009-Add-GDB-tools.patch +# Fedora specific patch +# Do not install erlang sources +Patch6: otp-0006-Do-not-install-erlang-sources.patch +# Fedora specific patch +# Split off webtool dependency from tools +Patch7: otp-0007-Split-off-webtool-dependency-from-tools.patch +# Fedora specific patch +# Add patch to crash dump on large distribution +Patch8: otp-0008-Add-patch-to-crash-dump-on-large-distribution.patch +# Fedora specific patch +# Don't send unasked for systemd notifications +Patch9: otp-0009-Don-t-send-unasked-for-systemd-notifications.patch +# Fedora specific patch +# Fix decoding of LLONG_MIN in erl_decode +Patch10: otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch +# Fedora specific patch +# Respect -proto_dist switch while connection to EPMD +Patch11: otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch +# Fedora specific patch +# erts: Fix correct link flags for hipe_mkliterals +Patch12: otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch +# Fedora specific patch +# erts: Disable -fPIE for HiPE on x86_64 +Patch13: otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch +# Fedora specific patch +# Fix CVE-2016-10253 +Patch14: otp-0014-Fix-CVE-2016-10253.patch +# Fedora specific patch +# Make inet:gethostbyname respect resolver option `inet6` +Patch15: otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch +# Fedora specific patch +# Fix erl_epmd:port_please when using IPv6 +Patch16: otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch # end of autogenerated patch tag list -BuildRequires: gcc -BuildRequires: gcc-c++ -# For gdb-tools -BuildRequires: gdb BuildRequires: flex -BuildRequires: make %if %{with doc} %if 0%{?need_bootstrap} < 1 @@ -123,11 +160,15 @@ BuildRequires: erlang %endif %endif +%if 0%{?el7}%{?fedora} # for BuildRequires: systemd-devel BuildRequires: systemd -%{?systemd_requires} +Requires(post): systemd +Requires(preun):systemd +Requires(postun):systemd Requires: systemd +%endif BuildRequires: autoconf BuildRequires: automake #BuildRequires: erlang-rpm-macros @@ -135,15 +176,22 @@ BuildRequires: automake Requires: %{name}-asn1%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} Requires: %{name}-common_test%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-compiler%{?_isa} = %{version}-%{release} +Requires: %{name}-cosEvent%{?_isa} = %{version}-%{release} +Requires: %{name}-cosEventDomain%{?_isa} = %{version}-%{release} +Requires: %{name}-cosFileTransfer%{?_isa} = %{version}-%{release} +Requires: %{name}-cosNotification%{?_isa} = %{version}-%{release} +Requires: %{name}-cosProperty%{?_isa} = %{version}-%{release} +Requires: %{name}-cosTime%{?_isa} = %{version}-%{release} +Requires: %{name}-cosTransactions%{?_isa} = %{version}-%{release} Requires: %{name}-crypto%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} Requires: %{name}-debugger%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %if %{__with_wxwidgets} Requires: %{name}-dialyzer%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-diameter%{?_isa} = %{version}-%{release} Requires: %{name}-edoc%{?_isa} = %{version}-%{release} Requires: %{name}-eldap%{?_isa} = %{version}-%{release} @@ -152,41 +200,58 @@ Requires: %{name}-erl_interface%{?_isa} = %{version}-%{release} Requires: %{name}-erts%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} Requires: %{name}-et%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-eunit%{?_isa} = %{version}-%{release} -Requires: %{name}-ftp%{?_isa} = %{version}-%{release} +%if %{__with_tcltk} +Requires: %{name}-gs%{?_isa} = %{version}-%{release} +%endif %{__with_tcltk} +Requires: %{name}-hipe%{?_isa} = %{version}-%{release} +%if %{__with_java} +Requires: %{name}-ic%{?_isa} = %{version}-%{release} +%endif %{__with_java} Requires: %{name}-inets%{?_isa} = %{version}-%{release} %if %{__with_java} Requires: %{name}-jinterface%{?_isa} = %{version}-%{release} -%endif # __with_java +%endif %{__with_java} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} Requires: %{name}-megaco%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-mnesia%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} Requires: %{name}-observer%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-odbc%{?_isa} = %{version}-%{release} +Requires: %{name}-orber%{?_isa} = %{version}-%{release} Requires: %{name}-os_mon%{?_isa} = %{version}-%{release} +Requires: %{name}-ose%{?_isa} = %{version}-%{release} +Requires: %{name}-otp_mibs%{?_isa} = %{version}-%{release} Requires: %{name}-parsetools%{?_isa} = %{version}-%{release} +Requires: %{name}-percept%{?_isa} = %{version}-%{release} Requires: %{name}-public_key%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} Requires: %{name}-reltool%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release} Requires: %{name}-sasl%{?_isa} = %{version}-%{release} Requires: %{name}-snmp%{?_isa} = %{version}-%{release} -Requires: %{name}-src%{?_isa} = %{version}-%{release} Requires: %{name}-ssh%{?_isa} = %{version}-%{release} Requires: %{name}-ssl%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release} -Requires: %{name}-tftp%{?_isa} = %{version}-%{release} +%if %{__with_wxwidgets} +Requires: %{name}-test_server%{?_isa} = %{version}-%{release} +%endif %{__with_wxwidgets} Requires: %{name}-tools%{?_isa} = %{version}-%{release} %if %{__with_wxwidgets} +Requires: %{name}-typer%{?_isa} = %{version}-%{release} +%endif %{__with_wxwidgets} +%if %{__with_wxwidgets} +Requires: %{name}-webtool%{?_isa} = %{version}-%{release} +%endif %{__with_wxwidgets} +%if %{__with_wxwidgets} Requires: %{name}-wx%{?_isa} = %{version}-%{release} -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} Requires: %{name}-xmerl%{?_isa} = %{version}-%{release} %description @@ -197,8 +262,32 @@ systems from Ericsson. ### BEGIN OF AUTOGENERATED LIST ### +%if %{__with_emacs} +%package -n emacs-erlang +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 +Group: Applications/Editors +Requires: emacs-erlang = %{version}-%{release} +BuildArch: noarch + +%description -n emacs-erlang-el +Erlang mode for GNU Emacs (source lisp files). +%endif %{__with_emacs} + %package asn1 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} @@ -209,6 +298,7 @@ Provides support for Abstract Syntax Notation One. %if %{__with_wxwidgets} %package common_test 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} @@ -221,31 +311,115 @@ Requires: %{name}-sasl%{?_isa} = %{version}-%{release} Requires: %{name}-snmp%{?_isa} = %{version}-%{release} Requires: %{name}-ssh%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} -Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release} +Requires: %{name}-test_server%{?_isa} = %{version}-%{release} Requires: %{name}-tools%{?_isa} = %{version}-%{release} Requires: %{name}-xmerl%{?_isa} = %{version}-%{release} -Obsoletes: erlang-test_server %description common_test A portable framework for automatic testing. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package compiler 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} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} %description compiler A byte code compiler for Erlang which produces highly compact code. +%package cosEvent +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} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosEvent +Orber OMG Event Service. + +%package cosEventDomain +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} +Requires: %{name}-orber%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosEventDomain +Orber OMG Event Domain Service. + +%package cosFileTransfer +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} +Requires: %{name}-kernel%{?_isa} = %{version}-%{release} +Requires: %{name}-orber%{?_isa} = %{version}-%{release} +Requires: %{name}-ssl%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosFileTransfer +Orber OMG File Transfer Service. + +%package cosNotification +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} +Requires: %{name}-kernel%{?_isa} = %{version}-%{release} +Requires: %{name}-orber%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosNotification +Orber OMG Notification Service. + +%package cosProperty +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} +Requires: %{name}-orber%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosProperty +Orber OMG Property Service. + +%package cosTime +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} +Requires: %{name}-orber%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosTime +Orber OMG Timer and TimerEvent Service. + +%package cosTransactions +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} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description cosTransactions +Orber OMG Transaction Service. + %package crypto Summary: Cryptographical support -BuildRequires: pkgconfig(openssl) -%if 0%{?fedora} > 40 -BuildRequires: openssl-devel-engine -%endif +Group: Development/Languages +BuildRequires: openssl-devel Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} @@ -256,6 +430,7 @@ Cryptographical support. %if %{__with_wxwidgets} %package debugger 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} @@ -264,26 +439,28 @@ Requires: %{name}-wx%{?_isa} = %{version}-%{release} %description debugger A debugger for debugging and testing of Erlang programs. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %if %{__with_wxwidgets} %package dialyzer 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} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release} Requires: %{name}-wx%{?_isa} = %{version}-%{release} Requires: graphviz -Obsoletes: erlang-typer %description dialyzer A DIscrepancy AnaLYZer for ERlang programs. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package diameter Summary: Diameter (RFC 3588) library +Group: Development/Languages BuildRequires: ed Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} @@ -298,8 +475,10 @@ Diameter (RFC 3588) library %if %{with doc} %package doc Summary: Erlang documentation +Group: Development/Languages BuildRequires: fop BuildRequires: libxslt +BuildArch: noarch %description doc Documentation for Erlang. @@ -307,6 +486,7 @@ Documentation for Erlang. %package edoc 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} @@ -319,6 +499,7 @@ A utility used to generate documentation out of tags in source files. %package eldap 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} @@ -330,6 +511,7 @@ Erlang LDAP library. %package erl_docgen 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} @@ -340,6 +522,7 @@ 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} %description erl_interface @@ -347,11 +530,13 @@ Low level interface to C. %package erts Summary: Functionality necessary to run the Erlang System itself +Group: Development/Languages BuildRequires: lksctp-tools-devel BuildRequires: m4 BuildRequires: ncurses-devel BuildRequires: zlib-devel # epmd user, epmd group +Requires(pre): shadow-utils Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} Requires: lksctp-tools @@ -360,23 +545,14 @@ Requires: lksctp-tools Provides: erlang(erl_drv_version) = 3.3 # 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.17 -Provides: bundled(pcre) = 8.44 -# git commit 965d19506ff2aed72e039b8c650b6ef5e9446b8c -Provides: bundled(asmjit) +Provides: erlang(erl_nif_version) = 2.10 +Provides: bundled(pcre) = 8.33 Obsoletes: erlang-appmon Obsoletes: erlang-docbuilder -Obsoletes: erlang-gs -Obsoletes: erlang-hipe Obsoletes: erlang-inviso -Obsoletes: erlang-ose -Obsoletes: erlang-otp_mibs -# Moved to https://github.com/erlang/percept -Obsoletes: erlang-percept < 20.2.3 Obsoletes: erlang-pman Obsoletes: erlang-toolbar Obsoletes: erlang-tv -Obsoletes: erlang-webtool %description erts Functionality necessary to run the Erlang System itself. @@ -384,6 +560,7 @@ Functionality necessary to run the Erlang System itself. %if %{__with_wxwidgets} %package et 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} @@ -392,10 +569,11 @@ Requires: %{name}-wx%{?_isa} = %{version}-%{release} %description et An event tracer for Erlang programs. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package eunit 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} @@ -406,7 +584,11 @@ Support for unit testing. %if %{__with_examples} %package examples Summary: Examples for some Erlang modules +Group: Development/Languages Requires: %{name}-erts%{?_isa} = %{version}-%{release} +%if %{__with_tcltk} +Requires: %{name}-gs%{?_isa} = %{version}-%{release} +%endif %{__with_tcltk} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-public_key%{?_isa} = %{version}-%{release} Requires: %{name}-sasl%{?_isa} = %{version}-%{release} @@ -415,27 +597,51 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} %description examples Examples for some Erlang modules. -%endif # __with_examples +%endif %{__with_examples} -%package ftp -Summary: FTP client +%if %{__with_tcltk} +%package gs +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} +Requires: tk + +%description gs +A Graphics System used to write platform independent user interfaces. +%endif %{__with_tcltk} + +%package hipe +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} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} +Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release} + +%description hipe +High Performance Erlang. + +%package ic +Summary: IDL compiler +Group: Development/Languages +%if %{__with_java} +BuildRequires: java-devel +%endif %{__with_java} Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} -%description ftp -FTP client. - -%package gdb-tools -Summary: GDB plugin -License: GPL-3.0-or-later -Requires: gdb - -%description gdb-tools -GDB plugin. +%description ic +IDL compiler. %package inets -Summary: A set of services such as a Web server and a HTTP client etc +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} @@ -444,21 +650,22 @@ Requires: %{name}-ssl%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} %description inets -A set of services such as a Web server and a HTTP client etc. +A set of services such as a Web server and a ftp client etc. %if %{__with_java} %package jinterface Summary: A library for accessing Java from Erlang +Group: Development/Languages BuildRequires: java-devel -Requires: javapackages-tools Requires: %{name}-erts%{?_isa} = %{version}-%{release} %description jinterface Low level interface to Java. -%endif # __with_java +%endif %{__with_java} %package kernel Summary: Main erlang library +Group: Development/Languages Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} @@ -468,6 +675,7 @@ Main erlang library. %if %{__with_wxwidgets} %package megaco 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} @@ -480,10 +688,11 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} Megaco/H.248 is a protocol for control of elements in a physically decomposed multimedia gateway, enabling separation of call control from media conversion. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package mnesia 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} @@ -494,6 +703,7 @@ A heavy duty real-time distributed database. %if %{__with_wxwidgets} %package observer 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} @@ -504,10 +714,11 @@ Requires: %{name}-wx%{?_isa} = %{version}-%{release} %description observer A set of tools for tracing and investigation of distributed systems. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package odbc 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} @@ -517,11 +728,26 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} An interface to relational SQL-databases built on ODBC (Open Database Connectivity). +%package orber +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} +Requires: %{name}-mnesia%{?_isa} = %{version}-%{release} +Requires: %{name}-ssl%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description orber +A CORBA Object Request Broker. + %package os_mon 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} +Requires: %{name}-otp_mibs%{?_isa} = %{version}-%{release} Requires: %{name}-sasl%{?_isa} = %{version}-%{release} Requires: %{name}-snmp%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} @@ -529,8 +755,30 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} %description os_mon A monitor which allows inspection of the underlying operating system. +%package ose +Summary: A module for interacting with Enea OSE +Group: Development/Languages +Requires: %{name}-erts%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description ose +A module for interacting with Enea OSE. + +%package otp_mibs +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} +Requires: %{name}-snmp%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description otp_mibs +SNMP management information base for Erlang/OTP nodes. + %package parsetools 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} @@ -538,8 +786,21 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} %description parsetools A set of parsing and lexical analysis tools. +%package percept +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} +Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description percept +A concurrency profiler tool. + %package public_key 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} @@ -552,6 +813,7 @@ API to public key infrastructure. %if %{__with_wxwidgets} %package reltool 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} @@ -566,10 +828,11 @@ between applications. The graphical frontend depicts the dependencies and enables interactive customization of a target system. The backend provides a batch interface for generation of customized target systems. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package runtime_tools 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} @@ -580,6 +843,7 @@ A set of tools to include in a production system. %package sasl 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} @@ -591,6 +855,7 @@ release upgrades and alarm handling etc. %package snmp 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} @@ -602,52 +867,9 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} Simple Network Management Protocol (SNMP) support including a MIB compiler and tools for creating SNMP agents. -%if %{__with_sources} -%package src -Summary: Erlang sources -Requires: %{name}-asn1%{?_isa} = %{version}-%{release} -Requires: %{name}-common_test%{?_isa} = %{version}-%{release} -Requires: %{name}-compiler%{?_isa} = %{version}-%{release} -Requires: %{name}-crypto%{?_isa} = %{version}-%{release} -Requires: %{name}-debugger%{?_isa} = %{version}-%{release} -Requires: %{name}-dialyzer%{?_isa} = %{version}-%{release} -Requires: %{name}-diameter%{?_isa} = %{version}-%{release} -Requires: %{name}-edoc%{?_isa} = %{version}-%{release} -Requires: %{name}-eldap%{?_isa} = %{version}-%{release} -Requires: %{name}-erl_docgen%{?_isa} = %{version}-%{release} -Requires: %{name}-erts%{?_isa} = %{version}-%{release} -Requires: %{name}-et%{?_isa} = %{version}-%{release} -Requires: %{name}-eunit%{?_isa} = %{version}-%{release} -Requires: %{name}-ftp%{?_isa} = %{version}-%{release} -Requires: %{name}-inets%{?_isa} = %{version}-%{release} -Requires: %{name}-kernel%{?_isa} = %{version}-%{release} -Requires: %{name}-megaco%{?_isa} = %{version}-%{release} -Requires: %{name}-mnesia%{?_isa} = %{version}-%{release} -Requires: %{name}-observer%{?_isa} = %{version}-%{release} -Requires: %{name}-odbc%{?_isa} = %{version}-%{release} -Requires: %{name}-os_mon%{?_isa} = %{version}-%{release} -Requires: %{name}-parsetools%{?_isa} = %{version}-%{release} -Requires: %{name}-public_key%{?_isa} = %{version}-%{release} -Requires: %{name}-reltool%{?_isa} = %{version}-%{release} -Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release} -Requires: %{name}-sasl%{?_isa} = %{version}-%{release} -Requires: %{name}-snmp%{?_isa} = %{version}-%{release} -Requires: %{name}-ssh%{?_isa} = %{version}-%{release} -Requires: %{name}-ssl%{?_isa} = %{version}-%{release} -Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} -Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release} -Requires: %{name}-tftp%{?_isa} = %{version}-%{release} -Requires: %{name}-tools%{?_isa} = %{version}-%{release} -Requires: %{name}-wx%{?_isa} = %{version}-%{release} -Requires: %{name}-xmerl%{?_isa} = %{version}-%{release} - -%description src -Erlang sources. It may be useful as a reference for code completion tools in -various editors, for documentation or automatical-code generation purposes. -%endif # __with_sources - %package ssh 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} @@ -659,6 +881,7 @@ Secure Shell application with sftp and ssh support. %package ssl 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} @@ -671,6 +894,7 @@ Secure Socket Layer support. %package stdlib 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} @@ -681,6 +905,7 @@ The Erlang standard libraries. %package syntax_tools 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} @@ -690,41 +915,79 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} A utility used to handle abstract Erlang syntax trees, reading source files differently, pretty-printing syntax trees. -%package tftp -Summary: TFTP client +%if %{__with_wxwidgets} +%package test_server +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 tftp -TFTP client. +%description test_server +The OTP Test Server. +%endif %{__with_wxwidgets} %package tools Summary: A set of programming tools including a coverage analyzer etc -%if %{__with_emacs} -BuildRequires: emacs -BuildRequires: emacs-el -%endif # __with_emacs +Group: Development/Languages Requires: %{name}-compiler%{?_isa} = %{version}-%{release} Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-inets%{?_isa} = %{version}-%{release} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-runtime_tools%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} +# This is a weak dependency triggered by the "cover_web" application. +# Unfortunately Recommends/Suggests tags are supported only in Fedora 21+ and +# RHEL 8+ (eventually) +%if 0%{?fedora} >= 21 || 0%{?rhel} >= 8 +Suggests: %{name}-webtool%{?_isa} = %{version}-%{release} +%endif %if %{__with_emacs} -Requires: emacs-filesystem -Obsoletes: emacs-erlang -Obsoletes: emacs-erlang-el -%endif # __with_emacs - +Provides: emacs-common-erlang = %{version}-%{release} +%endif %{__with_emacs} %description tools A set of programming tools including a coverage analyzer etc. +%if %{__with_wxwidgets} +%package typer +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} +Requires: %{name}-hipe%{?_isa} = %{version}-%{release} +Requires: %{name}-kernel%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description typer +TYPe annotator for ERlang programs. +%endif %{__with_wxwidgets} + +%if %{__with_wxwidgets} +%package webtool +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} +Requires: %{name}-observer%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description webtool +A tool that simplifying the use of web based Erlang tools. +%endif %{__with_wxwidgets} + %if %{__with_wxwidgets} %package wx Summary: A library for wxWidgets support in Erlang -BuildRequires: wxGTK-devel +Group: Development/Languages +BuildRequires: wxGTK3-devel Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} @@ -733,10 +996,11 @@ Requires: mesa-libGLU %description wx A Graphics System used to write platform independent user interfaces. -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %package xmerl 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} @@ -744,24 +1008,62 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} %description xmerl Provides support for XML 1.0. +%if %{__with_emacs} +%package -n xemacs-erlang +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 +Group: Applications/Editors +Requires: xemacs-erlang = %{version}-%{release} +BuildArch: noarch + +%description -n xemacs-erlang-el +Erlang mode for XEmacs (source lisp files). +%endif %{__with_emacs} + ### END OF AUTOGENERATED LIST ### %prep -%autosetup -p1 -n otp-OTP-%{version} +%setup -q -n otp-OTP-%{version} + +# start of autogenerated prep patch list +%patch1 -p1 -b .Do_not_format_man_pages_and_do_not_install_miscellan +%patch2 -p1 -b .Remove_rpath +%patch3 -p1 -b .Do_not_install_C_sources +%patch4 -p1 -b .Do_not_install_Java_sources +%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 .Add_patch_to_crash_dump_on_large_distribution +%patch9 -p1 -b .Don_t_send_unasked_for_systemd_notifications +%patch10 -p1 -b .Fix_decoding_of_LLONG_MIN_in_erl_decode +%patch11 -p1 -b .Respect_proto_dist_switch_while_connection_to_EPMD +%patch12 -p1 -b .erts_Fix_correct_link_flags_for_hipe_mkliterals +%patch13 -p1 -b .erts_Disable_fPIE_for_HiPE_on_x86_64 +%patch14 -p1 -b .Fix_CVE_2016_10253 +%patch15 -p1 -b .Make_inet_gethostbyname_respect_resolver_option_inet +%patch16 -p1 -b .Fix_erl_epmd_port_please_when_using_IPv6 +# end of autogenerated prep patch list # FIXME we should come up with a better solution # remove shipped zlib sources #rm -f erts/emulator/zlib/*.[ch] -# Create a sysusers.d config file -cat >erlang.sysusers.conf < xemacs-erlang-init.el << EOF +(setq load-path (cons "%{_xemacs_sitelispdir}/erlang" load-path)) +(setq erlang-root-dir "%{_libdir}/erlang") +(setq exec-path (cons "%{_libdir}/erlang/bin" exec-path)) +(require 'erlang-start) +EOF +mkdir xemacs-erlang +cp lib/tools/emacs/*.el xemacs-erlang/ +rm -f xemacs-erlang/erlang-flymake.el +pushd xemacs-erlang +%{_xemacs_bytecompile} *.el +popd +%endif %{__with_emacs} + +make %if %{with doc} # should use FOP_OPTS after #832323 is resolved @@ -846,7 +1163,19 @@ for f in lib/tools/emacs/{README,*.el}; do "$RPM_BUILD_ROOT%{_emacs_sitelispdir}/erlang/" done install -m 0644 emacs-erlang/*.elc "$RPM_BUILD_ROOT%{_emacs_sitelispdir}/erlang/" -%endif # __with_emacs + +# XEmacs related stuff +install -m 0755 -d "$RPM_BUILD_ROOT%{_xemacs_sitestartdir}" +install -m 0755 -d "$RPM_BUILD_ROOT%{_xemacs_sitelispdir}/erlang" +install -m 0644 xemacs-erlang-init.el "$RPM_BUILD_ROOT%{_xemacs_sitestartdir}/erlang-init.el" +for f in lib/tools/emacs/{README,*.el}; do + b="$(basename "$f")"; + ln -s "%{_libdir}/erlang/lib/tools-${erlang_tools_vsn}/emacs/$b" \ + "$RPM_BUILD_ROOT%{_xemacs_sitelispdir}/erlang/" +done +rm -f "$RPM_BUILD_ROOT%{_xemacs_sitelispdir}/erlang/erlang-flymake.el" +install -m 0644 xemacs-erlang/*.elc "$RPM_BUILD_ROOT%{_xemacs_sitelispdir}/erlang/" +%endif %{__with_emacs} make DESTDIR=$RPM_BUILD_ROOT install @@ -859,12 +1188,12 @@ find $RPM_BUILD_ROOT%{_libdir}/erlang -type f -name info -exec rm -f {} \; %if %{__with_examples} # fix 0775 permission on some directories -find $RPM_BUILD_ROOT%{_libdir}/erlang/lib/ssl-*/examples/ -type d -perm 0775 -print -exec chmod 755 {} \; -find $RPM_BUILD_ROOT%{_libdir}/erlang/lib/kernel-*/examples/uds_dist -type d -perm 0775 -print -exec chmod 755 {} \; +find $RPM_BUILD_ROOT%{_libdir}/erlang/lib/ssl-*/examples/ -type d -perm 0775 | xargs chmod 755 +find $RPM_BUILD_ROOT%{_libdir}/erlang/lib/kernel-*/examples/uds_dist -type d -perm 0775 | xargs chmod 755 %else # Remove all examples find $RPM_BUILD_ROOT%{_libdir}/erlang/lib/ -mindepth 1 -maxdepth 2 -type d -name examples -exec rm -rf {} \; -%endif # __with_examples +%endif %{__with_examples} chmod 0755 $RPM_BUILD_ROOT%{_libdir}/erlang/bin @@ -876,18 +1205,12 @@ cd $RPM_BUILD_ROOT%{_libdir}/erlang mv -v doc $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} for i in erts-* ; do mv -v $i/doc $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/$i ; done cd $RPM_BUILD_ROOT%{_libdir}/erlang/lib -for i in * ; do - mv -v $i/doc $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/lib/$i || true - # symlink 'chunks' in the code path for EEP-48 compliance (rhbz#2068758) - mkdir $i/doc - ln -s %{_docdir}/%{name}-%{version}/lib/$i/chunks $i/doc/ -done +for i in * ; do mv -v $i/doc $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/lib/$i || true ; done popd 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} -# We'll package it by marking it explicitly as doc - see below -rm -f $RPM_BUILD_ROOT%{_libdir}/erlang/README.md %endif # Win32-specific man-pages @@ -898,17 +1221,6 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/erlang/man/man3/win32reg.* # remove empty directory rm -r $RPM_BUILD_ROOT%{_libdir}/erlang/erts-*/man -%if %{with doc} -# Move man-pages to a system-wide directory - in the same way as Debian did -# Erlang files from man 3 have too generic names -for manpage in $RPM_BUILD_ROOT%{_libdir}/erlang/man/man3/* -do - mv ${manpage} ${manpage}erl -done -mkdir -p $RPM_BUILD_ROOT%{_mandir}/ -mv $RPM_BUILD_ROOT%{_libdir}/erlang/man/* $RPM_BUILD_ROOT%{_mandir}/ -%endif - # remove outdated script rm -f $RPM_BUILD_ROOT%{_libdir}/erlang/Install @@ -936,63 +1248,49 @@ done # symlink *.jar files to appropriate places for subpackages install -m 0755 -d "$RPM_BUILD_ROOT%{_javadir}/%{name}" +# erlang-ic +ic_lib_dir="$(ls -d1 $RPM_BUILD_ROOT%{_libdir}/erlang/lib/ic-*/ | sed "s,^$RPM_BUILD_ROOT,,")" +test -d "$RPM_BUILD_ROOT$ic_lib_dir" +ln -s "${ic_lib_dir}priv/ic.jar" "$RPM_BUILD_ROOT%{_javadir}/%{name}/" + # erlang-jinterface jinterface_lib_dir="$(ls -d1 $RPM_BUILD_ROOT%{_libdir}/erlang/lib/jinterface-*/ | sed "s,^$RPM_BUILD_ROOT,,")" test -d "$RPM_BUILD_ROOT$jinterface_lib_dir" ln -s "${jinterface_lib_dir}priv/OtpErlang.jar" "$RPM_BUILD_ROOT%{_javadir}/%{name}/" -%endif # __with_java +%endif %{__with_java} # systemd-related stuff +%if 0%{?el7}%{?fedora} install -D -p -m 0644 %{SOURCE5} %{buildroot}%{_unitdir}/epmd.service install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/epmd.socket install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_unitdir}/epmd@.service install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_unitdir}/epmd@.socket +%endif %if %{__with_wxwidgets} echo "No need to fix additional scripts" -# Fix file conflict w/ python3-typer-cli by renaming our typer to erlang-typer. -# We only rename the symlink in %%{_bindir}, not its direct and indirect -# targets in subdirectories of %%{_libdir}. -# -# File conflicts: /usr/bin/typer between erlang-dialyzer and python3-typer-cli -# https://bugzilla.redhat.com/show_bug.cgi?id=2359567 -mv %{buildroot}%{_bindir}/typer %{buildroot}%{_bindir}/erlang-typer -%if %{with doc} -mv %{buildroot}%{_mandir}/man1/typer.1 \ - %{buildroot}%{_mandir}/man1/erlang-typer.1 -sed -r -i 's/^(\.TH[[:blank:]]+)?(typer)\b/\1erlang-\2/' \ - %{buildroot}%{_mandir}/man1/erlang-typer.1 -%endif %else # FIXME workaround for broken Erlang install procedure -echo "Removing scripts which won't work w/o wxWidgets anyway" for exe in ct_run dialyzer typer do rm -f $RPM_BUILD_ROOT/%{_bindir}/${exe} rm -f $RPM_BUILD_ROOT/%{_libdir}/erlang/bin/${exe} rm -f $RPM_BUILD_ROOT/%{_libdir}/erlang/erts-*/bin/${exe} done -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} -# Provide a place for noarch libs to live. -install -d -p -m 0755 %{buildroot}%{_datadir}/erlang/ -install -d -p -m 0755 %{buildroot}%{_datadir}/erlang/lib - -install -m0644 -D erlang.sysusers.conf %{buildroot}%{_sysusersdir}/erlang.conf - -# GDB tools -install -D -p -m 0755 ./bin/*/jit-reader.so %{buildroot}%{_libdir}/gdb/jit-reader.so %check -TARGET="$(make target_configured)" -ERL_TOP="$(pwd)" -ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests -# Unfortunately running the tests will take several hours. So we build the -# package w/o tests for now. See this: -# https://github.com/erlang/otp/wiki/Running-tests +# FIXME run tests somehow +# make tests || exit 0 +%pre erts +getent group epmd >/dev/null || groupadd -r epmd +getent passwd epmd >/dev/null || \ +useradd -r -g epmd -d /tmp -s /sbin/nologin \ +-c "Erlang Port Mapper Daemon" epmd 2>/dev/null || : %files @@ -1002,6 +1300,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %doc %{_docdir}/%{name}-%{version}/COPYRIGHT %doc %{_docdir}/%{name}-%{version}/LICENSE.txt %doc %{_docdir}/%{name}-%{version}/PR.template +%doc %{_docdir}/%{name}-%{version}/README %doc %{_docdir}/%{name}-%{version}/README.md %endif @@ -1011,7 +1310,8 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/asn1-*/priv %{_libdir}/erlang/lib/asn1-*/src %if %{with doc} -%{_mandir}/man3/asn1ct.* +%{_libdir}/erlang/man/man3/asn1ct.* +%{_libdir}/erlang/man/man3/asn1rt.* %endif %if %{__with_wxwidgets} @@ -1021,67 +1321,175 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/erts-*/bin/ct_run %{_libdir}/erlang/lib/common_test-*/ %if %{with doc} -%{_mandir}/man1/ct_run.* -%{_mandir}/man3/ct.* -%{_mandir}/man3/ct_cover.* -%{_mandir}/man3/ct_ftp.* -%{_mandir}/man3/ct_hooks.* -%{_mandir}/man3/ct_master.* -%{_mandir}/man3/ct_netconfc.* -%{_mandir}/man3/ct_property_test.* -%{_mandir}/man3/ct_rpc.* -%{_mandir}/man3/ct_slave.* -%{_mandir}/man3/ct_snmp.* -%{_mandir}/man3/ct_ssh.* -%{_mandir}/man3/ct_suite.* -%{_mandir}/man3/ct_telnet.* -%{_mandir}/man3/ct_testspec.* -%{_mandir}/man3/unix_telnet.* -%{_mandir}/man6/common_test.* +%{_libdir}/erlang/man/man1/ct_run.* +%{_libdir}/erlang/man/man3/ct.* +%{_libdir}/erlang/man/man3/ct_cover.* +%{_libdir}/erlang/man/man3/ct_ftp.* +%{_libdir}/erlang/man/man3/ct_hooks.* +%{_libdir}/erlang/man/man3/ct_master.* +%{_libdir}/erlang/man/man3/ct_netconfc.* +%{_libdir}/erlang/man/man3/ct_property_test.* +%{_libdir}/erlang/man/man3/ct_rpc.* +%{_libdir}/erlang/man/man3/ct_slave.* +%{_libdir}/erlang/man/man3/ct_snmp.* +%{_libdir}/erlang/man/man3/ct_ssh.* +%{_libdir}/erlang/man/man3/ct_telnet.* +%{_libdir}/erlang/man/man3/unix_telnet.* +%{_libdir}/erlang/man/man6/common_test.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files compiler %{_libdir}/erlang/lib/compiler-*/ %if %{with doc} -%{_mandir}/man3/cerl.* -%{_mandir}/man3/cerl_clauses.* -%{_mandir}/man3/cerl_trees.* -%{_mandir}/man3/compile.* +%{_libdir}/erlang/man/man3/compile.* +%endif + +%files cosEvent +%{_libdir}/erlang/lib/cosEvent-*/ +%if %{with doc} +%{_libdir}/erlang/man/man3/cosEventApp.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_ConsumerAdmin.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_EventChannel.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_ProxyPullConsumer.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_ProxyPullSupplier.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_ProxyPushConsumer.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_ProxyPushSupplier.* +%{_libdir}/erlang/man/man3/CosEventChannelAdmin_SupplierAdmin.* +%endif + +%files cosEventDomain +%{_libdir}/erlang/lib/cosEventDomain-*/ +%if %{with doc} +%{_libdir}/erlang/man/man3/CosEventDomainAdmin.* +%{_libdir}/erlang/man/man3/CosEventDomainAdmin_EventDomain.* +%{_libdir}/erlang/man/man3/CosEventDomainAdmin_EventDomainFactory.* +%{_libdir}/erlang/man/man3/cosEventDomainApp.* +%endif + +%files cosFileTransfer +%dir %{_libdir}/erlang/lib/cosFileTransfer-*/ +%{_libdir}/erlang/lib/cosFileTransfer-*/ebin +%{_libdir}/erlang/lib/cosFileTransfer-*/include +%{_libdir}/erlang/lib/cosFileTransfer-*/src +%if %{with doc} +%{_libdir}/erlang/man/man3/cosFileTransferApp.* +%{_libdir}/erlang/man/man3/CosFileTransfer_Directory.* +%{_libdir}/erlang/man/man3/CosFileTransfer_File.* +%{_libdir}/erlang/man/man3/CosFileTransfer_FileIterator.* +%{_libdir}/erlang/man/man3/CosFileTransfer_FileTransferSession.* +%{_libdir}/erlang/man/man3/CosFileTransfer_VirtualFileSystem.* +%endif + +%files cosNotification +%dir %{_libdir}/erlang/lib/cosNotification-*/ +%{_libdir}/erlang/lib/cosNotification-*/ebin +%{_libdir}/erlang/lib/cosNotification-*/include +%{_libdir}/erlang/lib/cosNotification-*/src +%if %{with doc} +%{_libdir}/erlang/man/man3/CosNotification.* +%{_libdir}/erlang/man/man3/CosNotification_AdminPropertiesAdmin.* +%{_libdir}/erlang/man/man3/cosNotificationApp.* +%{_libdir}/erlang/man/man3/CosNotification_QoSAdmin.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ConsumerAdmin.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_EventChannel.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_EventChannelFactory.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ProxyConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ProxyPullConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ProxyPullSupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ProxyPushConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ProxyPushSupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_ProxySupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_SequenceProxyPullConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_SequenceProxyPullSupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_SequenceProxyPushConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_SequenceProxyPushSupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_StructuredProxyPullConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_StructuredProxyPullSupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_StructuredProxyPushConsumer.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_StructuredProxyPushSupplier.* +%{_libdir}/erlang/man/man3/CosNotifyChannelAdmin_SupplierAdmin.* +%{_libdir}/erlang/man/man3/CosNotifyComm_NotifyPublish.* +%{_libdir}/erlang/man/man3/CosNotifyComm_NotifySubscribe.* +%{_libdir}/erlang/man/man3/CosNotifyFilter_Filter.* +%{_libdir}/erlang/man/man3/CosNotifyFilter_FilterAdmin.* +%{_libdir}/erlang/man/man3/CosNotifyFilter_FilterFactory.* +%{_libdir}/erlang/man/man3/CosNotifyFilter_MappingFilter.* +%endif + +%files cosProperty +%dir %{_libdir}/erlang/lib/cosProperty-*/ +%{_libdir}/erlang/lib/cosProperty-*/ebin +%{_libdir}/erlang/lib/cosProperty-*/include +%{_libdir}/erlang/lib/cosProperty-*/src +%if %{with doc} +%{_libdir}/erlang/man/man3/cosProperty.* +%{_libdir}/erlang/man/man3/CosPropertyService_PropertiesIterator.* +%{_libdir}/erlang/man/man3/CosPropertyService_PropertyNamesIterator.* +%{_libdir}/erlang/man/man3/CosPropertyService_PropertySet.* +%{_libdir}/erlang/man/man3/CosPropertyService_PropertySetDef.* +%{_libdir}/erlang/man/man3/CosPropertyService_PropertySetDefFactory.* +%{_libdir}/erlang/man/man3/CosPropertyService_PropertySetFactory.* +%endif + +%files cosTime +%dir %{_libdir}/erlang/lib/cosTime-*/ +%{_libdir}/erlang/lib/cosTime-*/ebin +%{_libdir}/erlang/lib/cosTime-*/include +%{_libdir}/erlang/lib/cosTime-*/src +%if %{with doc} +%{_libdir}/erlang/man/man3/cosTime.* +%{_libdir}/erlang/man/man3/CosTimerEvent_TimerEventHandler.* +%{_libdir}/erlang/man/man3/CosTimerEvent_TimerEventService.* +%{_libdir}/erlang/man/man3/CosTime_TimeService.* +%{_libdir}/erlang/man/man3/CosTime_TIO.* +%{_libdir}/erlang/man/man3/CosTime_UTO.* +%endif + +%files cosTransactions +%dir %{_libdir}/erlang/lib/cosTransactions-*/ +%{_libdir}/erlang/lib/cosTransactions-*/ebin +%{_libdir}/erlang/lib/cosTransactions-*/include +%{_libdir}/erlang/lib/cosTransactions-*/src +%if %{with doc} +%{_libdir}/erlang/man/man3/cosTransactions.* +%{_libdir}/erlang/man/man3/CosTransactions_Control.* +%{_libdir}/erlang/man/man3/CosTransactions_Coordinator.* +%{_libdir}/erlang/man/man3/CosTransactions_RecoveryCoordinator.* +%{_libdir}/erlang/man/man3/CosTransactions_Resource.* +%{_libdir}/erlang/man/man3/CosTransactions_SubtransactionAwareResource.* +%{_libdir}/erlang/man/man3/CosTransactions_Terminator.* +%{_libdir}/erlang/man/man3/CosTransactions_TransactionFactory.* %endif %files crypto %{_libdir}/erlang/lib/crypto-*/ %if %{with doc} -%{_mandir}/man3/crypto.* -%{_mandir}/man6/crypto.* +%{_libdir}/erlang/man/man3/crypto.* +%{_libdir}/erlang/man/man6/crypto.* %endif %if %{__with_wxwidgets} %files debugger %{_libdir}/erlang/lib/debugger-*/ %if %{with doc} -%{_mandir}/man3/debugger.* -%{_mandir}/man3/i.* -%{_mandir}/man3/int.* +%{_libdir}/erlang/man/man3/debugger.* +%{_libdir}/erlang/man/man3/i.* +%{_libdir}/erlang/man/man3/int.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %if %{__with_wxwidgets} %files dialyzer %{_bindir}/dialyzer -# FIXME FIXME FIXME this must be installed properly!!!!!! -%{_bindir}/erlang-typer %{_libdir}/erlang/bin/dialyzer -%{_libdir}/erlang/bin/typer %{_libdir}/erlang/erts-*/bin/dialyzer -%{_libdir}/erlang/erts-*/bin/typer %{_libdir}/erlang/lib/dialyzer-*/ %if %{with doc} -%{_mandir}/man1/erlang-typer.* -%{_mandir}/man3/dialyzer.* +%{_libdir}/erlang/man/man3/dialyzer.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files diameter %dir %{_libdir}/erlang/lib/diameter-*/ @@ -1090,20 +1498,19 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/diameter-*/include %{_libdir}/erlang/lib/diameter-*/src %if %{with doc} -%{_mandir}/man1/diameterc.* -%{_mandir}/man3/diameter.* -%{_mandir}/man3/diameter_app.* -%{_mandir}/man3/diameter_codec.* -%{_mandir}/man3/diameter_make.* -%{_mandir}/man3/diameter_sctp.* -%{_mandir}/man3/diameter_tcp.* -%{_mandir}/man3/diameter_transport.* -%{_mandir}/man4/diameter_dict.* +%{_libdir}/erlang/man/man1/diameterc.* +%{_libdir}/erlang/man/man3/diameter.* +%{_libdir}/erlang/man/man3/diameter_app.* +%{_libdir}/erlang/man/man3/diameter_codec.* +%{_libdir}/erlang/man/man3/diameter_make.* +%{_libdir}/erlang/man/man3/diameter_sctp.* +%{_libdir}/erlang/man/man3/diameter_tcp.* +%{_libdir}/erlang/man/man3/diameter_transport.* +%{_libdir}/erlang/man/man4/diameter_dict.* %endif %if %{with doc} %files doc -%{_libdir}/erlang/lib/*/doc %doc %{_docdir}/%{name}-%{version}/doc %doc %{_docdir}/%{name}-%{version}/erts-*/ %doc %{_docdir}/%{name}-%{version}/lib/ @@ -1112,56 +1519,57 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %files edoc %{_libdir}/erlang/lib/edoc-*/ %if %{with doc} -%{_mandir}/man1/edoc.* -%{_mandir}/man3/edoc.* -%{_mandir}/man3/edoc_doclet.* -%{_mandir}/man3/edoc_doclet_chunks.* -%{_mandir}/man3/edoc_extract.* -%{_mandir}/man3/edoc_layout.* -%{_mandir}/man3/edoc_layout_chunks.* -%{_mandir}/man3/edoc_lib.* -%{_mandir}/man3/edoc_run.* +%{_libdir}/erlang/man/man3/edoc.* +%{_libdir}/erlang/man/man3/edoc_doclet.* +%{_libdir}/erlang/man/man3/edoc_extract.* +%{_libdir}/erlang/man/man3/edoc_layout.* +%{_libdir}/erlang/man/man3/edoc_lib.* +%{_libdir}/erlang/man/man3/edoc_run.* %endif %files eldap %{_libdir}/erlang/lib/eldap-*/ %if %{with doc} -%{_mandir}/man3/eldap.* +%{_libdir}/erlang/man/man3/eldap.* %endif %files erl_docgen %{_libdir}/erlang/lib/erl_docgen-*/ %if %{with doc} -%{_mandir}/man6/erl_docgen.* +%{_libdir}/erlang/man/man6/erl_docgen.* %endif %files erl_interface -%{_libdir}/erlang/bin/erl_call -%{_libdir}/erlang/erts-*/bin/erl_call %{_libdir}/erlang/lib/erl_interface-*/ %if %{with doc} -%{_mandir}/man1/erl_call.* -%{_mandir}/man3/ei.* -%{_mandir}/man3/ei_connect.* -%{_mandir}/man3/ei_global.* -#%%{_mandir}/man3/erl_connect.* -#%%{_mandir}/man3/erl_error.* -#%%{_mandir}/man3/erl_eterm.* -#%%{_mandir}/man3/erl_format.* -#%%{_mandir}/man3/erl_global.* -#%%{_mandir}/man3/erl_malloc.* -#%%{_mandir}/man3/erl_marshal.* +%{_libdir}/erlang/man/man1/erl_call.* +%{_libdir}/erlang/man/man3/ei.* +%{_libdir}/erlang/man/man3/ei_connect.* +%{_libdir}/erlang/man/man3/erl_connect.* +%{_libdir}/erlang/man/man3/erl_error.* +%{_libdir}/erlang/man/man3/erl_eterm.* +%{_libdir}/erlang/man/man3/erl_format.* +%{_libdir}/erlang/man/man3/erl_global.* +%{_libdir}/erlang/man/man3/erl_malloc.* +%{_libdir}/erlang/man/man3/erl_marshal.* +%{_libdir}/erlang/man/man3/registry.* %endif %files erts # TODO # In order to have a parallel-installable Erlang packages these directories # should be packaged separately -%dir %{_datadir}/erlang/ -%dir %{_datadir}/erlang/lib/ %dir %{_libdir}/erlang/ %dir %{_libdir}/erlang/bin/ %dir %{_libdir}/erlang/lib/ +%if %{with doc} +%dir %{_libdir}/erlang/man/ +%dir %{_libdir}/erlang/man/man1/ +%dir %{_libdir}/erlang/man/man3/ +%dir %{_libdir}/erlang/man/man4/ +%dir %{_libdir}/erlang/man/man6/ +%dir %{_libdir}/erlang/man/man7/ +%endif %dir %{_libdir}/erlang/releases/ %{_bindir}/epmd @@ -1185,12 +1593,13 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/bin/to_erl %dir %{_libdir}/erlang/erts-*/ %dir %{_libdir}/erlang/erts-*/bin/ +%{_libdir}/erlang/erts-*/bin/beam %{_libdir}/erlang/erts-*/bin/beam.smp +%{_libdir}/erlang/erts-*/bin/child_setup %{_libdir}/erlang/erts-*/bin/dyn_erl %{_libdir}/erlang/erts-*/bin/epmd %{_libdir}/erlang/erts-*/bin/erl %{_libdir}/erlang/erts-*/bin/erl.src -%{_libdir}/erlang/erts-*/bin/erl_child_setup %{_libdir}/erlang/erts-*/bin/erlc %{_libdir}/erlang/erts-*/bin/erlexec %{_libdir}/erlang/erts-*/bin/escript @@ -1201,42 +1610,35 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/erts-*/bin/start.src %{_libdir}/erlang/erts-*/bin/start_erl.src %{_libdir}/erlang/erts-*/bin/to_erl -%{_libdir}/erlang/erts-*/bin/yielding_c_fun %{_libdir}/erlang/erts-*/include %{_libdir}/erlang/erts-*/lib/ %{_libdir}/erlang/erts-*/src/ %{_libdir}/erlang/lib/erts-*/ %if %{with doc} -%{_mandir}/man1/epmd.* -%{_mandir}/man1/erl.* -%{_mandir}/man1/erlc.* -%{_mandir}/man1/escript.* -%{_mandir}/man1/run_erl.* -%{_mandir}/man1/start.* -%{_mandir}/man1/start_erl.* -%{_mandir}/man3/atomics.* -%{_mandir}/man3/counters.* -%{_mandir}/man3/driver_entry.* -%{_mandir}/man3/erl_driver.* -%{_mandir}/man3/erl_nif.* -%{_mandir}/man3/erl_prim_loader.* -%{_mandir}/man3/erl_tracer.* -%{_mandir}/man3/erlang.* -%{_mandir}/man3/erts_alloc.* -%{_mandir}/man3/init.* -%{_mandir}/man3/net.* -%{_mandir}/man3/persistent_term.* -%{_mandir}/man3/scheduler.* -%{_mandir}/man3/socket.* -%{_mandir}/man3/zlib.* +%{_libdir}/erlang/man/man1/epmd.* +%{_libdir}/erlang/man/man1/erl.* +%{_libdir}/erlang/man/man1/erlc.* +%{_libdir}/erlang/man/man1/escript.* +%{_libdir}/erlang/man/man1/run_erl.* +%{_libdir}/erlang/man/man1/start.* +%{_libdir}/erlang/man/man1/start_erl.* +%{_libdir}/erlang/man/man3/driver_entry.* +%{_libdir}/erlang/man/man3/erl_driver.* +%{_libdir}/erlang/man/man3/erl_nif.* +%{_libdir}/erlang/man/man3/erl_prim_loader.* +%{_libdir}/erlang/man/man3/erlang.* +%{_libdir}/erlang/man/man3/erts_alloc.* +%{_libdir}/erlang/man/man3/init.* +%{_libdir}/erlang/man/man3/zlib.* %endif %{_libdir}/erlang/releases/* %{_libdir}/erlang/usr/ +%if 0%{?el7}%{?fedora} %{_unitdir}/epmd.service %{_unitdir}/epmd.socket %{_unitdir}/epmd@.service %{_unitdir}/epmd@.socket -%{_sysusersdir}/erlang.conf +%endif %if %{__with_wxwidgets} %files et @@ -1245,12 +1647,12 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/et-*/include %{_libdir}/erlang/lib/et-*/src %if %{with doc} -%{_mandir}/man3/et.* -%{_mandir}/man3/et_collector.* -%{_mandir}/man3/et_selector.* -%{_mandir}/man3/et_viewer.* +%{_libdir}/erlang/man/man3/et.* +%{_libdir}/erlang/man/man3/et_collector.* +%{_libdir}/erlang/man/man3/et_selector.* +%{_libdir}/erlang/man/man3/et_viewer.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files eunit %dir %{_libdir}/erlang/lib/eunit-*/ @@ -1258,8 +1660,8 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/eunit-*/include %{_libdir}/erlang/lib/eunit-*/src %if %{with doc} -%{_mandir}/man3/eunit.* -%{_mandir}/man3/eunit_surefire.* +%{_libdir}/erlang/man/man3/eunit.* +%{_libdir}/erlang/man/man3/eunit_surefire.* %endif %if %{__with_examples} @@ -1268,20 +1670,25 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/diameter-*/examples/ %if %{__with_wxwidgets} %{_libdir}/erlang/lib/et-*/examples/ -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %{_libdir}/erlang/lib/eunit-*/examples/ +%if %{__with_tcltk} +%{_libdir}/erlang/lib/gs-*/examples/ +%endif %{__with_tcltk} +%if %{__with_java} +%{_libdir}/erlang/lib/ic-*/examples/ +%endif %{__with_java} %{_libdir}/erlang/lib/inets-*/examples/ %{_libdir}/erlang/lib/kernel-*/examples/ -%if %{__with_wxwidgets} %{_libdir}/erlang/lib/megaco-*/examples/ -%endif # __with_wxwidgets %{_libdir}/erlang/lib/mnesia-*/examples/ %if %{__with_wxwidgets} %{_libdir}/erlang/lib/observer-*/examples/ -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} +%{_libdir}/erlang/lib/orber-*/examples/ %if %{__with_wxwidgets} %{_libdir}/erlang/lib/reltool-*/examples/ -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %{_libdir}/erlang/lib/runtime_tools-*/examples/ %{_libdir}/erlang/lib/sasl-*/examples/ %{_libdir}/erlang/lib/snmp-*/examples/ @@ -1291,19 +1698,40 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/tools-*/examples/ %if %{__with_wxwidgets} %{_libdir}/erlang/lib/wx-*/examples/ -%endif # __with_wxwidgets -%endif # __with_examples +%endif %{__with_wxwidgets} +%endif %{__with_examples} -%files ftp -%dir %{_libdir}/erlang/lib/ftp-*/ -%{_libdir}/erlang/lib/ftp-*/ebin -%{_libdir}/erlang/lib/ftp-*/src +%if %{__with_tcltk} +%files gs +%dir %{_libdir}/erlang/lib/gs-*/ +%{_libdir}/erlang/lib/gs-*/contribs +%{_libdir}/erlang/lib/gs-*/ebin +%{_libdir}/erlang/lib/gs-*/priv +%{_libdir}/erlang/lib/gs-*/src %if %{with doc} -%{_mandir}/man3/ftp.* +%{_libdir}/erlang/man/man3/gs.* %endif +%endif %{__with_tcltk} -%files gdb-tools -%{_libdir}/gdb/jit-reader.so +%files hipe +%{_libdir}/erlang/lib/hipe-*/ + +%files ic +%dir %{_libdir}/erlang/lib/ic-*/ +%{_libdir}/erlang/lib/ic-*/ebin +%{_libdir}/erlang/lib/ic-*/include +%{_libdir}/erlang/lib/ic-*/priv +%{_libdir}/erlang/lib/ic-*/src +# FIXME see erlang-jinterface also +#%dir %{_javadir}/%{name}/ +%if %{__with_java} +%{_javadir}/%{name}/ic.jar +%endif %{__with_java} +%if %{with doc} +%{_libdir}/erlang/man/man3/ic.* +%{_libdir}/erlang/man/man3/ic_clib.* +%{_libdir}/erlang/man/man3/ic_c_protocol.* +%endif %files inets %dir %{_libdir}/erlang/lib/inets-*/ @@ -1312,30 +1740,28 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/inets-*/priv %{_libdir}/erlang/lib/inets-*/src %if %{with doc} -%{_mandir}/man3/ftp.* -%{_mandir}/man3/http_uri.* -%{_mandir}/man3/httpc.* -%{_mandir}/man3/httpd.* -%{_mandir}/man3/httpd_custom_api.* -%{_mandir}/man3/httpd_socket.* -%{_mandir}/man3/httpd_util.* -%{_mandir}/man3/inets.* -%{_mandir}/man3/mod_alias.* -%{_mandir}/man3/mod_auth.* -%{_mandir}/man3/mod_esi.* -%{_mandir}/man3/mod_security.* -%{_mandir}/man3/tftp.* +%{_libdir}/erlang/man/man3/ftp.* +%{_libdir}/erlang/man/man3/http_uri.* +%{_libdir}/erlang/man/man3/httpc.* +%{_libdir}/erlang/man/man3/httpd.* +%{_libdir}/erlang/man/man3/httpd_custom_api.* +%{_libdir}/erlang/man/man3/httpd_socket.* +%{_libdir}/erlang/man/man3/httpd_util.* +%{_libdir}/erlang/man/man3/inets.* +%{_libdir}/erlang/man/man3/mod_alias.* +%{_libdir}/erlang/man/man3/mod_auth.* +%{_libdir}/erlang/man/man3/mod_esi.* +%{_libdir}/erlang/man/man3/mod_security.* +%{_libdir}/erlang/man/man3/tftp.* %endif %if %{__with_java} %files jinterface -%dir %{_javadir}/%{name}/ +# FIXME see erlang-ic also +#%dir %{_javadir}/%{name}/ %{_javadir}/%{name}/OtpErlang.jar %{_libdir}/erlang/lib/jinterface-*/ -%if %{with doc} -%{_mandir}/man3/jinterface.* -%endif -%endif # __with_java +%endif %{__with_java} %files kernel %dir %{_libdir}/erlang/lib/kernel-*/ @@ -1343,44 +1769,38 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/kernel-*/include %{_libdir}/erlang/lib/kernel-*/src %if %{with doc} -%{_mandir}/man3/application.* -%{_mandir}/man3/auth.* -%{_mandir}/man3/code.* -%{_mandir}/man3/disk_log.* -%{_mandir}/man3/erl_boot_server.* -%{_mandir}/man3/erl_ddll.* -%{_mandir}/man3/erl_epmd.* -%{_mandir}/man3/erl_prim_loader_stub.* -%{_mandir}/man3/erlang_stub.* -%{_mandir}/man3/erpc.* -%{_mandir}/man3/error_handler.* -%{_mandir}/man3/error_logger.* -%{_mandir}/man3/file.* -%{_mandir}/man3/gen_sctp.* -%{_mandir}/man3/gen_tcp.* -%{_mandir}/man3/gen_udp.* -%{_mandir}/man3/global.* -%{_mandir}/man3/global_group.* -%{_mandir}/man3/heart.* -%{_mandir}/man3/inet.* -%{_mandir}/man3/inet_res.* -%{_mandir}/man3/init_stub.* -%{_mandir}/man3/logger.* -%{_mandir}/man3/logger_disk_log_h.* -%{_mandir}/man3/logger_filters.* -%{_mandir}/man3/logger_formatter.* -%{_mandir}/man3/logger_std_h.* -%{_mandir}/man3/net_adm.* -%{_mandir}/man3/net_kernel.* -%{_mandir}/man3/os.* -%{_mandir}/man3/pg.* -%{_mandir}/man3/rpc.* -%{_mandir}/man3/seq_trace.* -%{_mandir}/man3/wrap_log_reader.* -%{_mandir}/man3/zlib_stub.* -%{_mandir}/man4/app.* -%{_mandir}/man4/config.* -%{_mandir}/man6/kernel.* +%{_libdir}/erlang/man/man3/application.* +%{_libdir}/erlang/man/man3/auth.* +%{_libdir}/erlang/man/man3/code.* +%{_libdir}/erlang/man/man3/disk_log.* +%{_libdir}/erlang/man/man3/erl_boot_server.* +%{_libdir}/erlang/man/man3/erl_ddll.* +%{_libdir}/erlang/man/man3/erl_prim_loader_stub.* +%{_libdir}/erlang/man/man3/erlang_stub.* +%{_libdir}/erlang/man/man3/error_handler.* +%{_libdir}/erlang/man/man3/error_logger.* +%{_libdir}/erlang/man/man3/file.* +%{_libdir}/erlang/man/man3/gen_sctp.* +%{_libdir}/erlang/man/man3/gen_tcp.* +%{_libdir}/erlang/man/man3/gen_udp.* +%{_libdir}/erlang/man/man3/global.* +%{_libdir}/erlang/man/man3/global_group.* +%{_libdir}/erlang/man/man3/heart.* +%{_libdir}/erlang/man/man3/inet.* +%{_libdir}/erlang/man/man3/inet_res.* +%{_libdir}/erlang/man/man3/init_stub.* +%{_libdir}/erlang/man/man3/net_adm.* +%{_libdir}/erlang/man/man3/net_kernel.* +%{_libdir}/erlang/man/man3/os.* +%{_libdir}/erlang/man/man3/pg2.* +%{_libdir}/erlang/man/man3/rpc.* +%{_libdir}/erlang/man/man3/seq_trace.* +%{_libdir}/erlang/man/man3/user.* +%{_libdir}/erlang/man/man3/wrap_log_reader.* +%{_libdir}/erlang/man/man3/zlib_stub.* +%{_libdir}/erlang/man/man4/app.* +%{_libdir}/erlang/man/man4/config.* +%{_libdir}/erlang/man/man6/kernel.* %endif %if %{__with_wxwidgets} @@ -1391,29 +1811,29 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/megaco-*/priv %{_libdir}/erlang/lib/megaco-*/src %if %{with doc} -%{_mandir}/man3/megaco.* -%{_mandir}/man3/megaco_codec_meas.* -%{_mandir}/man3/megaco_codec_mstone1.* -%{_mandir}/man3/megaco_codec_mstone2.* -%{_mandir}/man3/megaco_codec_transform.* -%{_mandir}/man3/megaco_edist_compress.* -%{_mandir}/man3/megaco_encoder.* -%{_mandir}/man3/megaco_flex_scanner.* -%{_mandir}/man3/megaco_tcp.* -%{_mandir}/man3/megaco_transport.* -%{_mandir}/man3/megaco_udp.* -%{_mandir}/man3/megaco_user.* +%{_libdir}/erlang/man/man3/megaco.* +%{_libdir}/erlang/man/man3/megaco_codec_meas.* +%{_libdir}/erlang/man/man3/megaco_codec_mstone1.* +%{_libdir}/erlang/man/man3/megaco_codec_mstone2.* +%{_libdir}/erlang/man/man3/megaco_codec_transform.* +%{_libdir}/erlang/man/man3/megaco_edist_compress.* +%{_libdir}/erlang/man/man3/megaco_encoder.* +%{_libdir}/erlang/man/man3/megaco_flex_scanner.* +%{_libdir}/erlang/man/man3/megaco_tcp.* +%{_libdir}/erlang/man/man3/megaco_transport.* +%{_libdir}/erlang/man/man3/megaco_udp.* +%{_libdir}/erlang/man/man3/megaco_user.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files mnesia %dir %{_libdir}/erlang/lib/mnesia-*/ %{_libdir}/erlang/lib/mnesia-*/ebin %{_libdir}/erlang/lib/mnesia-*/src %if %{with doc} -%{_mandir}/man3/mnesia.* -%{_mandir}/man3/mnesia_frag_hash.* -%{_mandir}/man3/mnesia_registry.* +%{_libdir}/erlang/man/man3/mnesia.* +%{_libdir}/erlang/man/man3/mnesia_frag_hash.* +%{_libdir}/erlang/man/man3/mnesia_registry.* %endif %if %{__with_wxwidgets} @@ -1424,43 +1844,94 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/observer-*/priv/ %{_libdir}/erlang/lib/observer-*/src/ %if %{with doc} -%{_mandir}/man1/cdv.* -%{_mandir}/man3/crashdump.* -%{_mandir}/man3/etop.* -%{_mandir}/man3/observer.* -%{_mandir}/man3/ttb.* -%{_mandir}/man6/observer.* +%{_libdir}/erlang/man/man1/cdv.* +%{_libdir}/erlang/man/man3/crashdump.* +%{_libdir}/erlang/man/man3/etop.* +%{_libdir}/erlang/man/man3/observer.* +%{_libdir}/erlang/man/man3/ttb.* +%{_libdir}/erlang/man/man6/observer.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files odbc %{_libdir}/erlang/lib/odbc-*/ %if %{with doc} -%{_mandir}/man3/odbc.* +%{_libdir}/erlang/man/man3/odbc.* +%endif + +%files orber +%dir %{_libdir}/erlang/lib/orber-*/ +%{_libdir}/erlang/lib/orber-*/COSS +%{_libdir}/erlang/lib/orber-*/ebin +%{_libdir}/erlang/lib/orber-*/include +%{_libdir}/erlang/lib/orber-*/java_src +%{_libdir}/erlang/lib/orber-*/priv +%{_libdir}/erlang/lib/orber-*/src +%if %{with doc} +%{_libdir}/erlang/man/man3/CosNaming.* +%{_libdir}/erlang/man/man3/CosNaming_BindingIterator.* +%{_libdir}/erlang/man/man3/CosNaming_NamingContext.* +%{_libdir}/erlang/man/man3/CosNaming_NamingContextExt.* +%{_libdir}/erlang/man/man3/Module_Interface.* +%{_libdir}/erlang/man/man3/any.* +%{_libdir}/erlang/man/man3/corba.* +%{_libdir}/erlang/man/man3/corba_object.* +%{_libdir}/erlang/man/man3/fixed.* +%{_libdir}/erlang/man/man3/interceptors.* +%{_libdir}/erlang/man/man3/lname.* +%{_libdir}/erlang/man/man3/lname_component.* +%{_libdir}/erlang/man/man3/orber.* +%{_libdir}/erlang/man/man3/orber_acl.* +%{_libdir}/erlang/man/man3/orber_diagnostics.* +%{_libdir}/erlang/man/man3/orber_ifr.* +%{_libdir}/erlang/man/man3/orber_tc.* %endif %files os_mon %{_libdir}/erlang/lib/os_mon-*/ %if %{with doc} -%{_mandir}/man3/cpu_sup.* -%{_mandir}/man3/disksup.* -%{_mandir}/man3/memsup.* -%{_mandir}/man3/os_sup.* -%{_mandir}/man6/os_mon.* +%{_libdir}/erlang/man/man3/cpu_sup.* +%{_libdir}/erlang/man/man3/disksup.* +%{_libdir}/erlang/man/man3/memsup.* +%{_libdir}/erlang/man/man3/os_mon_mib.* +%{_libdir}/erlang/man/man3/os_sup.* +%{_libdir}/erlang/man/man6/os_mon.* +%endif + +%files ose +%dir %{_libdir}/erlang/lib/ose-*/ +%{_libdir}/erlang/lib/ose-*/ebin/ +%if %{with doc} +%{_libdir}/erlang/man/man3/ose.* +%{_libdir}/erlang/man/man3/ose_erl_driver.* +%{_libdir}/erlang/man/man6/ose.* +%endif + +%files otp_mibs +%{_libdir}/erlang/lib/otp_mibs-*/ +%if %{with doc} +%{_libdir}/erlang/man/man3/otp_mib.* %endif %files parsetools %{_libdir}/erlang/lib/parsetools-*/ %if %{with doc} -%{_mandir}/man3/leex.* -%{_mandir}/man3/yecc.* +%{_libdir}/erlang/man/man3/leex.* +%{_libdir}/erlang/man/man3/yecc.* +%endif + +%files percept +%{_libdir}/erlang/lib/percept-*/ +%if %{with doc} +%{_libdir}/erlang/man/man3/egd.* +%{_libdir}/erlang/man/man3/percept.* +%{_libdir}/erlang/man/man3/percept_profile.* %endif %files public_key %{_libdir}/erlang/lib/public_key-*/ %if %{with doc} -%{_mandir}/man3/public_key.* -%{_mandir}/man6/public_key.* +%{_libdir}/erlang/man/man3/public_key.* %endif %if %{__with_wxwidgets} @@ -1469,9 +1940,9 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/reltool-*/ebin %{_libdir}/erlang/lib/reltool-*/src %if %{with doc} -%{_mandir}/man3/reltool.* +%{_libdir}/erlang/man/man3/reltool.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files runtime_tools %dir %{_libdir}/erlang/lib/runtime_tools-*/ @@ -1479,11 +1950,11 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/runtime_tools-*/include/ %{_libdir}/erlang/lib/runtime_tools-*/priv/ %if %{with doc} -%{_mandir}/man3/dbg.* -%{_mandir}/man3/dyntrace.* -%{_mandir}/man3/msacc.* -%{_mandir}/man3/system_information.* -%{_mandir}/man6/runtime_tools.* +%{_libdir}/erlang/man/man3/dbg.* +%{_libdir}/erlang/man/man3/dyntrace.* +%{_libdir}/erlang/man/man3/erts_alloc_config.* +%{_libdir}/erlang/man/man3/system_information.* +%{_libdir}/erlang/man/man6/runtime_tools.* %endif %files sasl @@ -1491,15 +1962,16 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/sasl-*/ebin %{_libdir}/erlang/lib/sasl-*/src %if %{with doc} -%{_mandir}/man3/alarm_handler.* -%{_mandir}/man3/rb.* -%{_mandir}/man3/release_handler.* -%{_mandir}/man3/systools.* -%{_mandir}/man4/appup.* -%{_mandir}/man4/rel.* -%{_mandir}/man4/relup.* -%{_mandir}/man4/script.* -%{_mandir}/man6/sasl.* +%{_libdir}/erlang/man/man3/alarm_handler.* +%{_libdir}/erlang/man/man3/overload.* +%{_libdir}/erlang/man/man3/rb.* +%{_libdir}/erlang/man/man3/release_handler.* +%{_libdir}/erlang/man/man3/systools.* +%{_libdir}/erlang/man/man4/appup.* +%{_libdir}/erlang/man/man4/rel.* +%{_libdir}/erlang/man/man4/relup.* +%{_libdir}/erlang/man/man4/script.* +%{_libdir}/erlang/man/man6/sasl.* %endif %files snmp @@ -1511,64 +1983,57 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/snmp-*/priv %{_libdir}/erlang/lib/snmp-*/src %if %{with doc} -%{_mandir}/man1/snmpc.* -%{_mandir}/man3/snmp.* -%{_mandir}/man3/snmpa.* -%{_mandir}/man3/snmpa_conf.* -%{_mandir}/man3/snmpa_discovery_handler.* -%{_mandir}/man3/snmpa_error.* -%{_mandir}/man3/snmpa_error_io.* -%{_mandir}/man3/snmpa_error_logger.* -%{_mandir}/man3/snmpa_error_report.* -%{_mandir}/man3/snmpa_local_db.* -%{_mandir}/man3/snmpa_mib_data.* -%{_mandir}/man3/snmpa_mib_storage.* -%{_mandir}/man3/snmpa_mpd.* -%{_mandir}/man3/snmpa_network_interface.* -%{_mandir}/man3/snmpa_network_interface_filter.* -%{_mandir}/man3/snmpa_notification_delivery_info_receiver.* -%{_mandir}/man3/snmpa_notification_filter.* -%{_mandir}/man3/snmpa_supervisor.* -%{_mandir}/man3/snmpc.* -%{_mandir}/man3/snmp_community_mib.* -%{_mandir}/man3/snmp_framework_mib.* -%{_mandir}/man3/snmp_generic.* -%{_mandir}/man3/snmp_index.* -%{_mandir}/man3/snmpm.* -%{_mandir}/man3/snmpm_conf.* -%{_mandir}/man3/snmpm_mpd.* -%{_mandir}/man3/snmpm_network_interface.* -%{_mandir}/man3/snmpm_network_interface_filter.* -%{_mandir}/man3/snmpm_user.* -%{_mandir}/man3/snmp_notification_mib.* -%{_mandir}/man3/snmp_pdus.* -%{_mandir}/man3/snmp_standard_mib.* -%{_mandir}/man3/snmp_target_mib.* -%{_mandir}/man3/snmp_user_based_sm_mib.* -%{_mandir}/man3/snmp_view_based_acm_mib.* -%{_mandir}/man6/snmp.* -%{_mandir}/man7/INET-ADDRESS-MIB.* -%{_mandir}/man7/OTP-SNMPEA-MIB.* -%{_mandir}/man7/RFC1213-MIB.* -%{_mandir}/man7/SNMP-COMMUNITY-MIB.* -%{_mandir}/man7/SNMP-FRAMEWORK-MIB.* -%{_mandir}/man7/SNMP-MPD-MIB.* -%{_mandir}/man7/SNMP-NOTIFICATION-MIB.* -%{_mandir}/man7/SNMP-TARGET-MIB.* -%{_mandir}/man7/SNMP-USER-BASED-SM-MIB.* -%{_mandir}/man7/SNMP-USM-AES-MIB.* -%{_mandir}/man7/SNMPv2-MIB.* -%{_mandir}/man7/SNMPv2-TM.* -%{_mandir}/man7/SNMP-VIEW-BASED-ACM-MIB.* -%{_mandir}/man7/STANDARD-MIB.* -%{_mandir}/man7/TRANSPORT-ADDRESS-MIB.* -%endif - -%if %{__with_sources} -%files src -%dir %{_libdir}/erlang/lib/*/src/ -%{_libdir}/erlang/lib/*/src/*.erl -%{_libdir}/erlang/lib/*/src/*.yrl +%{_libdir}/erlang/man/man1/snmpc.* +%{_libdir}/erlang/man/man3/snmp.* +%{_libdir}/erlang/man/man3/snmpa.* +%{_libdir}/erlang/man/man3/snmpa_conf.* +%{_libdir}/erlang/man/man3/snmpa_discovery_handler.* +%{_libdir}/erlang/man/man3/snmpa_error.* +%{_libdir}/erlang/man/man3/snmpa_error_io.* +%{_libdir}/erlang/man/man3/snmpa_error_logger.* +%{_libdir}/erlang/man/man3/snmpa_error_report.* +%{_libdir}/erlang/man/man3/snmpa_local_db.* +%{_libdir}/erlang/man/man3/snmpa_mib_data.* +%{_libdir}/erlang/man/man3/snmpa_mib_storage.* +%{_libdir}/erlang/man/man3/snmpa_mpd.* +%{_libdir}/erlang/man/man3/snmpa_network_interface.* +%{_libdir}/erlang/man/man3/snmpa_network_interface_filter.* +%{_libdir}/erlang/man/man3/snmpa_notification_delivery_info_receiver.* +%{_libdir}/erlang/man/man3/snmpa_notification_filter.* +%{_libdir}/erlang/man/man3/snmpa_supervisor.* +%{_libdir}/erlang/man/man3/snmpc.* +%{_libdir}/erlang/man/man3/snmp_community_mib.* +%{_libdir}/erlang/man/man3/snmp_framework_mib.* +%{_libdir}/erlang/man/man3/snmp_generic.* +%{_libdir}/erlang/man/man3/snmp_index.* +%{_libdir}/erlang/man/man3/snmpm.* +%{_libdir}/erlang/man/man3/snmpm_conf.* +%{_libdir}/erlang/man/man3/snmpm_mpd.* +%{_libdir}/erlang/man/man3/snmpm_network_interface.* +%{_libdir}/erlang/man/man3/snmpm_network_interface_filter.* +%{_libdir}/erlang/man/man3/snmpm_user.* +%{_libdir}/erlang/man/man3/snmp_notification_mib.* +%{_libdir}/erlang/man/man3/snmp_pdus.* +%{_libdir}/erlang/man/man3/snmp_standard_mib.* +%{_libdir}/erlang/man/man3/snmp_target_mib.* +%{_libdir}/erlang/man/man3/snmp_user_based_sm_mib.* +%{_libdir}/erlang/man/man3/snmp_view_based_acm_mib.* +%{_libdir}/erlang/man/man6/snmp.* +%{_libdir}/erlang/man/man7/INET-ADDRESS-MIB.* +%{_libdir}/erlang/man/man7/OTP-SNMPEA-MIB.* +%{_libdir}/erlang/man/man7/RFC1213-MIB.* +%{_libdir}/erlang/man/man7/SNMP-COMMUNITY-MIB.* +%{_libdir}/erlang/man/man7/SNMP-FRAMEWORK-MIB.* +%{_libdir}/erlang/man/man7/SNMP-MPD-MIB.* +%{_libdir}/erlang/man/man7/SNMP-NOTIFICATION-MIB.* +%{_libdir}/erlang/man/man7/SNMP-TARGET-MIB.* +%{_libdir}/erlang/man/man7/SNMP-USER-BASED-SM-MIB.* +%{_libdir}/erlang/man/man7/SNMP-USM-AES-MIB.* +%{_libdir}/erlang/man/man7/SNMPv2-MIB.* +%{_libdir}/erlang/man/man7/SNMPv2-TM.* +%{_libdir}/erlang/man/man7/SNMP-VIEW-BASED-ACM-MIB.* +%{_libdir}/erlang/man/man7/STANDARD-MIB.* +%{_libdir}/erlang/man/man7/TRANSPORT-ADDRESS-MIB.* %endif %files ssh @@ -1577,17 +2042,14 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/ssh-*/include %{_libdir}/erlang/lib/ssh-*/src %if %{with doc} -%{_mandir}/man3/ssh.* -%{_mandir}/man3/ssh_agent.* -%{_mandir}/man3/ssh_client_channel.* -%{_mandir}/man3/ssh_client_key_api.* -%{_mandir}/man3/ssh_connection.* -%{_mandir}/man3/ssh_file.* -%{_mandir}/man3/ssh_server_channel.* -%{_mandir}/man3/ssh_server_key_api.* -%{_mandir}/man3/ssh_sftp.* -%{_mandir}/man3/ssh_sftpd.* -%{_mandir}/man6/SSH.* +%{_libdir}/erlang/man/man3/ssh.* +%{_libdir}/erlang/man/man3/ssh_channel.* +%{_libdir}/erlang/man/man3/ssh_client_key_api.* +%{_libdir}/erlang/man/man3/ssh_connection.* +%{_libdir}/erlang/man/man3/ssh_server_key_api.* +%{_libdir}/erlang/man/man3/ssh_sftp.* +%{_libdir}/erlang/man/man3/ssh_sftpd.* +%{_libdir}/erlang/man/man6/ssh.* %endif %files ssl @@ -1595,11 +2057,11 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/ssl-*/ebin %{_libdir}/erlang/lib/ssl-*/src %if %{with doc} -%{_mandir}/man3/ssl.* -%{_mandir}/man3/ssl_crl_cache.* -%{_mandir}/man3/ssl_crl_cache_api.* -%{_mandir}/man3/ssl_session_cache_api.* -%{_mandir}/man6/ssl.* +%{_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 %files stdlib @@ -1608,75 +2070,67 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/stdlib-*/include %{_libdir}/erlang/lib/stdlib-*/src %if %{with doc} -%{_mandir}/man3/argparse.* -%{_mandir}/man3/array.* -%{_mandir}/man3/base64.* -%{_mandir}/man3/beam_lib.* -%{_mandir}/man3/binary.* -%{_mandir}/man3/c.* -%{_mandir}/man3/calendar.* -%{_mandir}/man3/dets.* -%{_mandir}/man3/dict.* -%{_mandir}/man3/digraph.* -%{_mandir}/man3/digraph_utils.* -%{_mandir}/man3/edlin.* -%{_mandir}/man3/edlin_expand.* -%{_mandir}/man3/epp.* -%{_mandir}/man3/erl_anno.* -%{_mandir}/man3/erl_error.* -%{_mandir}/man3/erl_eval.* -%{_mandir}/man3/erl_expand_records.* -%{_mandir}/man3/erl_features.* -%{_mandir}/man3/erl_id_trans.* -%{_mandir}/man3/erl_internal.* -%{_mandir}/man3/erl_lint.* -%{_mandir}/man3/erl_parse.* -%{_mandir}/man3/erl_pp.* -%{_mandir}/man3/erl_scan.* -%{_mandir}/man3/erl_tar.* -%{_mandir}/man3/ets.* -%{_mandir}/man3/file_sorter.* -%{_mandir}/man3/filelib.* -%{_mandir}/man3/filename.* -%{_mandir}/man3/gb_sets.* -%{_mandir}/man3/gb_trees.* -%{_mandir}/man3/gen_event.* -%{_mandir}/man3/gen_fsm.* -%{_mandir}/man3/gen_server.* -%{_mandir}/man3/gen_statem.* -%{_mandir}/man3/io.* -%{_mandir}/man3/io_lib.* -%{_mandir}/man3/lists.* -%{_mandir}/man3/log_mf_h.* -%{_mandir}/man3/maps.* -%{_mandir}/man3/math.* -%{_mandir}/man3/ms_transform.* -%{_mandir}/man3/orddict.* -%{_mandir}/man3/ordsets.* -%{_mandir}/man3/peer.* -%{_mandir}/man3/pool.* -%{_mandir}/man3/proc_lib.* -%{_mandir}/man3/proplists.* -%{_mandir}/man3/qlc.* -%{_mandir}/man3/queue.* -%{_mandir}/man3/rand.* -%{_mandir}/man3/random.* -%{_mandir}/man3/re.* -%{_mandir}/man3/sets.* -%{_mandir}/man3/shell.* -%{_mandir}/man3/shell_default.* -%{_mandir}/man3/shell_docs.* -%{_mandir}/man3/slave.* -%{_mandir}/man3/sofs.* -%{_mandir}/man3/string.* -%{_mandir}/man3/supervisor.* -%{_mandir}/man3/supervisor_bridge.* -%{_mandir}/man3/sys.* -%{_mandir}/man3/timer.* -%{_mandir}/man3/unicode.* -%{_mandir}/man3/uri_string.* -%{_mandir}/man3/zip.* -%{_mandir}/man6/stdlib.* +%{_libdir}/erlang/man/man3/array.* +%{_libdir}/erlang/man/man3/base64.* +%{_libdir}/erlang/man/man3/beam_lib.* +%{_libdir}/erlang/man/man3/binary.* +%{_libdir}/erlang/man/man3/c.* +%{_libdir}/erlang/man/man3/calendar.* +%{_libdir}/erlang/man/man3/dets.* +%{_libdir}/erlang/man/man3/dict.* +%{_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.* +%{_libdir}/erlang/man/man3/erl_internal.* +%{_libdir}/erlang/man/man3/erl_lint.* +%{_libdir}/erlang/man/man3/erl_parse.* +%{_libdir}/erlang/man/man3/erl_pp.* +%{_libdir}/erlang/man/man3/erl_scan.* +%{_libdir}/erlang/man/man3/erl_tar.* +%{_libdir}/erlang/man/man3/ets.* +%{_libdir}/erlang/man/man3/file_sorter.* +%{_libdir}/erlang/man/man3/filelib.* +%{_libdir}/erlang/man/man3/filename.* +%{_libdir}/erlang/man/man3/gb_sets.* +%{_libdir}/erlang/man/man3/gb_trees.* +%{_libdir}/erlang/man/man3/gen_event.* +%{_libdir}/erlang/man/man3/gen_fsm.* +%{_libdir}/erlang/man/man3/gen_server.* +%{_libdir}/erlang/man/man3/io.* +%{_libdir}/erlang/man/man3/io_lib.* +%{_libdir}/erlang/man/man3/lib.* +%{_libdir}/erlang/man/man3/lists.* +%{_libdir}/erlang/man/man3/log_mf_h.* +%{_libdir}/erlang/man/man3/maps.* +%{_libdir}/erlang/man/man3/math.* +%{_libdir}/erlang/man/man3/ms_transform.* +%{_libdir}/erlang/man/man3/orddict.* +%{_libdir}/erlang/man/man3/ordsets.* +%{_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.* +%{_libdir}/erlang/man/man3/shell.* +%{_libdir}/erlang/man/man3/shell_default.* +%{_libdir}/erlang/man/man3/slave.* +%{_libdir}/erlang/man/man3/sofs.* +%{_libdir}/erlang/man/man3/string.* +%{_libdir}/erlang/man/man3/supervisor.* +%{_libdir}/erlang/man/man3/supervisor_bridge.* +%{_libdir}/erlang/man/man3/sys.* +%{_libdir}/erlang/man/man3/timer.* +%{_libdir}/erlang/man/man3/unicode.* +%{_libdir}/erlang/man/man3/zip.* +%{_libdir}/erlang/man/man6/stdlib.* %endif %files syntax_tools @@ -1684,50 +2138,66 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/syntax_tools-*/ebin %{_libdir}/erlang/lib/syntax_tools-*/include %if %{with doc} -%{_mandir}/man3/epp_dodger.* -%{_mandir}/man3/erl_comment_scan.* -%{_mandir}/man3/erl_prettypr.* -%{_mandir}/man3/erl_recomment.* -%{_mandir}/man3/erl_syntax.* -%{_mandir}/man3/erl_syntax_lib.* -%{_mandir}/man3/merl.* -%{_mandir}/man3/merl_transform.* -%{_mandir}/man3/prettypr.* +%{_libdir}/erlang/man/man3/epp_dodger.* +%{_libdir}/erlang/man/man3/erl_comment_scan.* +%{_libdir}/erlang/man/man3/erl_prettypr.* +%{_libdir}/erlang/man/man3/erl_recomment.* +%{_libdir}/erlang/man/man3/erl_syntax.* +%{_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 -%files tftp -%dir %{_libdir}/erlang/lib/tftp-*/ -%{_libdir}/erlang/lib/tftp-*/ebin -%{_libdir}/erlang/lib/tftp-*/src +%if %{__with_wxwidgets} +%files test_server +%{_libdir}/erlang/lib/test_server-*/ %if %{with doc} -%{_mandir}/man3/tftp.* +%{_libdir}/erlang/man/man3/test_server.* +%{_libdir}/erlang/man/man3/test_server_ctrl.* +%{_libdir}/erlang/man/man6/test_server.* %endif +%endif %{__with_wxwidgets} %files tools %dir %{_libdir}/erlang/lib/tools-*/ +%{_libdir}/erlang/lib/tools-*/bin %{_libdir}/erlang/lib/tools-*/ebin %{_libdir}/erlang/lib/tools-*/emacs -%{_libdir}/erlang/lib/tools-*/src %{_libdir}/erlang/lib/tools-*/priv +%{_libdir}/erlang/lib/tools-*/src %if %{with doc} -%{_mandir}/man3/cover.* -%{_mandir}/man3/cprof.* -%{_mandir}/man3/eprof.* -%{_mandir}/man3/erlang_mode.* -%{_mandir}/man3/fprof.* -%{_mandir}/man3/instrument.* -%{_mandir}/man3/lcnt.* -%{_mandir}/man3/make.* -%{_mandir}/man3/tags.* -%{_mandir}/man3/xref.* +%{_libdir}/erlang/man/man3/cover.* +%{_libdir}/erlang/man/man3/cprof.* +%{_libdir}/erlang/man/man3/eprof.* +%{_libdir}/erlang/man/man3/erlang_mode.* +%{_libdir}/erlang/man/man3/fprof.* +%{_libdir}/erlang/man/man3/instrument.* +%{_libdir}/erlang/man/man3/lcnt.* +%{_libdir}/erlang/man/man3/make.* +%{_libdir}/erlang/man/man3/tags.* +%{_libdir}/erlang/man/man3/xref.* %endif -%if %{__with_emacs} -%dir %{_emacs_sitelispdir}/erlang -%doc %{_emacs_sitelispdir}/erlang/README -%{_emacs_sitelispdir}/erlang/*.el -%{_emacs_sitelispdir}/erlang/*.elc -%{_emacs_sitestartdir}/erlang-init.el -%endif # __with_emacs + +%if %{__with_wxwidgets} +%files typer +%{_bindir}/typer +%{_libdir}/erlang/bin/typer +%{_libdir}/erlang/erts-*/bin/typer +%dir %{_libdir}/erlang/lib/typer-*/ +%{_libdir}/erlang/lib/typer-*/ebin/ +%endif %{__with_wxwidgets} + +%if %{__with_wxwidgets} +%files webtool +%{_libdir}/erlang/lib/webtool-*/ +%if %{with doc} +%{_libdir}/erlang/man/man1/start_webtool.* +%{_libdir}/erlang/man/man3/webtool.* +%endif +%endif %{__with_wxwidgets} %if %{__with_wxwidgets} %files wx @@ -1737,907 +2207,286 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests %{_libdir}/erlang/lib/wx-*/priv %{_libdir}/erlang/lib/wx-*/src %if %{with doc} -%{_mandir}/man3/gl.* -%{_mandir}/man3/glu.* -%{_mandir}/man3/wx.* -%{_mandir}/man3/wxAcceleratorEntry.* -%{_mandir}/man3/wxAcceleratorTable.* -%{_mandir}/man3/wxActivateEvent.* -%{_mandir}/man3/wxArtProvider.* -%{_mandir}/man3/wxAuiDockArt.* -%{_mandir}/man3/wxAuiManager.* -%{_mandir}/man3/wxAuiManagerEvent.* -%{_mandir}/man3/wxAuiNotebook.* -%{_mandir}/man3/wxAuiNotebookEvent.* -%{_mandir}/man3/wxAuiPaneInfo.* -%{_mandir}/man3/wxAuiSimpleTabArt.* -%{_mandir}/man3/wxAuiTabArt.* -%{_mandir}/man3/wxBitmap.* -%{_mandir}/man3/wxBitmapButton.* -%{_mandir}/man3/wxBitmapDataObject.* -%{_mandir}/man3/wxBookCtrlBase.* -%{_mandir}/man3/wxBookCtrlEvent.* -%{_mandir}/man3/wxBoxSizer.* -%{_mandir}/man3/wxBrush.* -%{_mandir}/man3/wxBufferedDC.* -%{_mandir}/man3/wxBufferedPaintDC.* -%{_mandir}/man3/wxButton.* -%{_mandir}/man3/wxCalendarCtrl.* -%{_mandir}/man3/wxCalendarDateAttr.* -%{_mandir}/man3/wxCalendarEvent.* -%{_mandir}/man3/wxCaret.* -%{_mandir}/man3/wxCheckBox.* -%{_mandir}/man3/wxCheckListBox.* -%{_mandir}/man3/wxChildFocusEvent.* -%{_mandir}/man3/wxChoice.* -%{_mandir}/man3/wxChoicebook.* -%{_mandir}/man3/wxClientDC.* -%{_mandir}/man3/wxClipboard.* -%{_mandir}/man3/wxClipboardTextEvent.* -%{_mandir}/man3/wxCloseEvent.* -%{_mandir}/man3/wxColourData.* -%{_mandir}/man3/wxColourDialog.* -%{_mandir}/man3/wxColourPickerCtrl.* -%{_mandir}/man3/wxColourPickerEvent.* -%{_mandir}/man3/wxComboBox.* -%{_mandir}/man3/wxCommandEvent.* -%{_mandir}/man3/wxContextMenuEvent.* -%{_mandir}/man3/wxControl.* -%{_mandir}/man3/wxControlWithItems.* -%{_mandir}/man3/wxCursor.* -%{_mandir}/man3/wxDC.* -%{_mandir}/man3/wxDCOverlay.* -%{_mandir}/man3/wxDataObject.* -%{_mandir}/man3/wxDateEvent.* -%{_mandir}/man3/wxDatePickerCtrl.* -%{_mandir}/man3/wxDialog.* -%{_mandir}/man3/wxDirDialog.* -%{_mandir}/man3/wxDirPickerCtrl.* -%{_mandir}/man3/wxDisplay.* -%{_mandir}/man3/wxDisplayChangedEvent.* -%{_mandir}/man3/wxDropFilesEvent.* -%{_mandir}/man3/wxEraseEvent.* -%{_mandir}/man3/wxEvent.* -%{_mandir}/man3/wxEvtHandler.* -%{_mandir}/man3/wxFileDataObject.* -%{_mandir}/man3/wxFileDialog.* -%{_mandir}/man3/wxFileDirPickerEvent.* -%{_mandir}/man3/wxFilePickerCtrl.* -%{_mandir}/man3/wxFindReplaceData.* -%{_mandir}/man3/wxFindReplaceDialog.* -%{_mandir}/man3/wxFlexGridSizer.* -%{_mandir}/man3/wxFocusEvent.* -%{_mandir}/man3/wxFont.* -%{_mandir}/man3/wxFontData.* -%{_mandir}/man3/wxFontDialog.* -%{_mandir}/man3/wxFontPickerCtrl.* -%{_mandir}/man3/wxFontPickerEvent.* -%{_mandir}/man3/wxFrame.* -%{_mandir}/man3/wxGBSizerItem.* -%{_mandir}/man3/wxGCDC.* -%{_mandir}/man3/wxGLCanvas.* -%{_mandir}/man3/wxGLContext.* -%{_mandir}/man3/wxGauge.* -%{_mandir}/man3/wxGenericDirCtrl.* -%{_mandir}/man3/wxGraphicsBrush.* -%{_mandir}/man3/wxGraphicsContext.* -%{_mandir}/man3/wxGraphicsFont.* -%{_mandir}/man3/wxGraphicsGradientStops.* -%{_mandir}/man3/wxGraphicsMatrix.* -%{_mandir}/man3/wxGraphicsObject.* -%{_mandir}/man3/wxGraphicsPath.* -%{_mandir}/man3/wxGraphicsPen.* -%{_mandir}/man3/wxGraphicsRenderer.* -%{_mandir}/man3/wxGrid.* -%{_mandir}/man3/wxGridBagSizer.* -%{_mandir}/man3/wxGridCellAttr.* -%{_mandir}/man3/wxGridCellBoolEditor.* -%{_mandir}/man3/wxGridCellBoolRenderer.* -%{_mandir}/man3/wxGridCellChoiceEditor.* -%{_mandir}/man3/wxGridCellEditor.* -%{_mandir}/man3/wxGridCellFloatEditor.* -%{_mandir}/man3/wxGridCellFloatRenderer.* -%{_mandir}/man3/wxGridCellNumberEditor.* -%{_mandir}/man3/wxGridCellNumberRenderer.* -%{_mandir}/man3/wxGridCellRenderer.* -%{_mandir}/man3/wxGridCellStringRenderer.* -%{_mandir}/man3/wxGridCellTextEditor.* -%{_mandir}/man3/wxGridEvent.* -%{_mandir}/man3/wxGridSizer.* -%{_mandir}/man3/wxHelpEvent.* -%{_mandir}/man3/wxHtmlEasyPrinting.* -%{_mandir}/man3/wxHtmlLinkEvent.* -%{_mandir}/man3/wxHtmlWindow.* -%{_mandir}/man3/wxIcon.* -%{_mandir}/man3/wxIconBundle.* -%{_mandir}/man3/wxIconizeEvent.* -%{_mandir}/man3/wxIdleEvent.* -%{_mandir}/man3/wxImage.* -%{_mandir}/man3/wxImageList.* -%{_mandir}/man3/wxInitDialogEvent.* -%{_mandir}/man3/wxJoystickEvent.* -%{_mandir}/man3/wxKeyEvent.* -%{_mandir}/man3/wxLayoutAlgorithm.* -%{_mandir}/man3/wxListBox.* -%{_mandir}/man3/wxListCtrl.* -%{_mandir}/man3/wxListEvent.* -%{_mandir}/man3/wxListItem.* -%{_mandir}/man3/wxListItemAttr.* -%{_mandir}/man3/wxListView.* -%{_mandir}/man3/wxListbook.* -%{_mandir}/man3/wxLocale.* -%{_mandir}/man3/wxLogNull.* -%{_mandir}/man3/wxMDIChildFrame.* -%{_mandir}/man3/wxMDIClientWindow.* -%{_mandir}/man3/wxMDIParentFrame.* -%{_mandir}/man3/wxMask.* -%{_mandir}/man3/wxMaximizeEvent.* -%{_mandir}/man3/wxMemoryDC.* -%{_mandir}/man3/wxMenu.* -%{_mandir}/man3/wxMenuBar.* -%{_mandir}/man3/wxMenuEvent.* -%{_mandir}/man3/wxMenuItem.* -%{_mandir}/man3/wxMessageDialog.* -%{_mandir}/man3/wxMiniFrame.* -%{_mandir}/man3/wxMirrorDC.* -%{_mandir}/man3/wxMouseCaptureChangedEvent.* -%{_mandir}/man3/wxMouseCaptureLostEvent.* -%{_mandir}/man3/wxMouseEvent.* -%{_mandir}/man3/wxMoveEvent.* -%{_mandir}/man3/wxMultiChoiceDialog.* -%{_mandir}/man3/wxNavigationKeyEvent.* -%{_mandir}/man3/wxNotebook.* -%{_mandir}/man3/wxNotificationMessage.* -%{_mandir}/man3/wxNotifyEvent.* -%{_mandir}/man3/wxOverlay.* -%{_mandir}/man3/wxPageSetupDialog.* -%{_mandir}/man3/wxPageSetupDialogData.* -%{_mandir}/man3/wxPaintDC.* -%{_mandir}/man3/wxPaintEvent.* -%{_mandir}/man3/wxPalette.* -%{_mandir}/man3/wxPaletteChangedEvent.* -%{_mandir}/man3/wxPanel.* -%{_mandir}/man3/wxPasswordEntryDialog.* -%{_mandir}/man3/wxPen.* -%{_mandir}/man3/wxPickerBase.* -%{_mandir}/man3/wxPopupTransientWindow.* -%{_mandir}/man3/wxPopupWindow.* -%{_mandir}/man3/wxPostScriptDC.* -%{_mandir}/man3/wxPreviewCanvas.* -%{_mandir}/man3/wxPreviewControlBar.* -%{_mandir}/man3/wxPreviewFrame.* -%{_mandir}/man3/wxPrintData.* -%{_mandir}/man3/wxPrintDialog.* -%{_mandir}/man3/wxPrintDialogData.* -%{_mandir}/man3/wxPrintPreview.* -%{_mandir}/man3/wxPrinter.* -%{_mandir}/man3/wxPrintout.* -%{_mandir}/man3/wxProgressDialog.* -%{_mandir}/man3/wxQueryNewPaletteEvent.* -%{_mandir}/man3/wxRadioBox.* -%{_mandir}/man3/wxRadioButton.* -%{_mandir}/man3/wxRegion.* -%{_mandir}/man3/wxSashEvent.* -%{_mandir}/man3/wxSashLayoutWindow.* -%{_mandir}/man3/wxSashWindow.* -%{_mandir}/man3/wxScreenDC.* -%{_mandir}/man3/wxScrollBar.* -%{_mandir}/man3/wxScrollEvent.* -%{_mandir}/man3/wxScrollWinEvent.* -%{_mandir}/man3/wxScrolledWindow.* -%{_mandir}/man3/wxSetCursorEvent.* -%{_mandir}/man3/wxShowEvent.* -%{_mandir}/man3/wxSingleChoiceDialog.* -%{_mandir}/man3/wxSizeEvent.* -%{_mandir}/man3/wxSizer.* -%{_mandir}/man3/wxSizerFlags.* -%{_mandir}/man3/wxSizerItem.* -%{_mandir}/man3/wxSlider.* -%{_mandir}/man3/wxSpinButton.* -%{_mandir}/man3/wxSpinCtrl.* -%{_mandir}/man3/wxSpinEvent.* -%{_mandir}/man3/wxSplashScreen.* -%{_mandir}/man3/wxSplitterEvent.* -%{_mandir}/man3/wxSplitterWindow.* -%{_mandir}/man3/wxStaticBitmap.* -%{_mandir}/man3/wxStaticBox.* -%{_mandir}/man3/wxStaticBoxSizer.* -%{_mandir}/man3/wxStaticLine.* -%{_mandir}/man3/wxStaticText.* -%{_mandir}/man3/wxStatusBar.* -%{_mandir}/man3/wxStdDialogButtonSizer.* -%{_mandir}/man3/wxStyledTextCtrl.* -%{_mandir}/man3/wxStyledTextEvent.* -%{_mandir}/man3/wxSysColourChangedEvent.* -%{_mandir}/man3/wxSystemOptions.* -%{_mandir}/man3/wxSystemSettings.* -%{_mandir}/man3/wxTaskBarIcon.* -%{_mandir}/man3/wxTaskBarIconEvent.* -%{_mandir}/man3/wxTextAttr.* -%{_mandir}/man3/wxTextCtrl.* -%{_mandir}/man3/wxTextDataObject.* -%{_mandir}/man3/wxTextEntryDialog.* -%{_mandir}/man3/wxToggleButton.* -%{_mandir}/man3/wxToolBar.* -%{_mandir}/man3/wxToolTip.* -%{_mandir}/man3/wxToolbook.* -%{_mandir}/man3/wxTopLevelWindow.* -%{_mandir}/man3/wxTreeCtrl.* -%{_mandir}/man3/wxTreeEvent.* -%{_mandir}/man3/wxTreebook.* -%{_mandir}/man3/wxUpdateUIEvent.* -%{_mandir}/man3/wxWebView.* -%{_mandir}/man3/wxWebViewEvent.* -%{_mandir}/man3/wxWindow.* -%{_mandir}/man3/wxWindowCreateEvent.* -%{_mandir}/man3/wxWindowDC.* -%{_mandir}/man3/wxWindowDestroyEvent.* -%{_mandir}/man3/wxXmlResource.* -%{_mandir}/man3/wx_misc.* -%{_mandir}/man3/wx_object.* +%{_libdir}/erlang/man/man3/gl.* +%{_libdir}/erlang/man/man3/glu.* +%{_libdir}/erlang/man/man3/wx.* +%{_libdir}/erlang/man/man3/wx_misc.* +%{_libdir}/erlang/man/man3/wx_object.* +%{_libdir}/erlang/man/man3/wxAcceleratorEntry.* +%{_libdir}/erlang/man/man3/wxAcceleratorTable.* +%{_libdir}/erlang/man/man3/wxActivateEvent.* +%{_libdir}/erlang/man/man3/wxArtProvider.* +%{_libdir}/erlang/man/man3/wxAuiDockArt.* +%{_libdir}/erlang/man/man3/wxAuiManager.* +%{_libdir}/erlang/man/man3/wxAuiManagerEvent.* +%{_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.* +%{_libdir}/erlang/man/man3/wxBitmapDataObject.* +%{_libdir}/erlang/man/man3/wxBoxSizer.* +%{_libdir}/erlang/man/man3/wxBrush.* +%{_libdir}/erlang/man/man3/wxBufferedDC.* +%{_libdir}/erlang/man/man3/wxBufferedPaintDC.* +%{_libdir}/erlang/man/man3/wxButton.* +%{_libdir}/erlang/man/man3/wxCalendarCtrl.* +%{_libdir}/erlang/man/man3/wxCalendarDateAttr.* +%{_libdir}/erlang/man/man3/wxCalendarEvent.* +%{_libdir}/erlang/man/man3/wxCaret.* +%{_libdir}/erlang/man/man3/wxCheckBox.* +%{_libdir}/erlang/man/man3/wxCheckListBox.* +%{_libdir}/erlang/man/man3/wxChildFocusEvent.* +%{_libdir}/erlang/man/man3/wxChoice.* +%{_libdir}/erlang/man/man3/wxChoicebook.* +%{_libdir}/erlang/man/man3/wxClientDC.* +%{_libdir}/erlang/man/man3/wxClipboard.* +%{_libdir}/erlang/man/man3/wxClipboardTextEvent.* +%{_libdir}/erlang/man/man3/wxCloseEvent.* +%{_libdir}/erlang/man/man3/wxColourData.* +%{_libdir}/erlang/man/man3/wxColourDialog.* +%{_libdir}/erlang/man/man3/wxColourPickerCtrl.* +%{_libdir}/erlang/man/man3/wxColourPickerEvent.* +%{_libdir}/erlang/man/man3/wxComboBox.* +%{_libdir}/erlang/man/man3/wxCommandEvent.* +%{_libdir}/erlang/man/man3/wxContextMenuEvent.* +%{_libdir}/erlang/man/man3/wxControl.* +%{_libdir}/erlang/man/man3/wxControlWithItems.* +%{_libdir}/erlang/man/man3/wxCursor.* +%{_libdir}/erlang/man/man3/wxDataObject.* +%{_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.* +%{_libdir}/erlang/man/man3/wxDisplayChangedEvent.* +%{_libdir}/erlang/man/man3/wxEraseEvent.* +%{_libdir}/erlang/man/man3/wxEvent.* +%{_libdir}/erlang/man/man3/wxEvtHandler.* +%{_libdir}/erlang/man/man3/wxFileDataObject.* +%{_libdir}/erlang/man/man3/wxFileDialog.* +%{_libdir}/erlang/man/man3/wxFileDirPickerEvent.* +%{_libdir}/erlang/man/man3/wxFilePickerCtrl.* +%{_libdir}/erlang/man/man3/wxFindReplaceData.* +%{_libdir}/erlang/man/man3/wxFindReplaceDialog.* +%{_libdir}/erlang/man/man3/wxFlexGridSizer.* +%{_libdir}/erlang/man/man3/wxFocusEvent.* +%{_libdir}/erlang/man/man3/wxFont.* +%{_libdir}/erlang/man/man3/wxFontData.* +%{_libdir}/erlang/man/man3/wxFontDialog.* +%{_libdir}/erlang/man/man3/wxFontPickerCtrl.* +%{_libdir}/erlang/man/man3/wxFontPickerEvent.* +%{_libdir}/erlang/man/man3/wxFrame.* +%{_libdir}/erlang/man/man3/wxGauge.* +%{_libdir}/erlang/man/man3/wxGBSizerItem.* +%{_libdir}/erlang/man/man3/wxGenericDirCtrl.* +%{_libdir}/erlang/man/man3/wxGLCanvas.* +%{_libdir}/erlang/man/man3/wxGraphicsBrush.* +%{_libdir}/erlang/man/man3/wxGraphicsContext.* +%{_libdir}/erlang/man/man3/wxGraphicsFont.* +%{_libdir}/erlang/man/man3/wxGraphicsMatrix.* +%{_libdir}/erlang/man/man3/wxGraphicsObject.* +%{_libdir}/erlang/man/man3/wxGraphicsPath.* +%{_libdir}/erlang/man/man3/wxGraphicsPen.* +%{_libdir}/erlang/man/man3/wxGraphicsRenderer.* +%{_libdir}/erlang/man/man3/wxGrid.* +%{_libdir}/erlang/man/man3/wxGridBagSizer.* +%{_libdir}/erlang/man/man3/wxGridCellAttr.* +%{_libdir}/erlang/man/man3/wxGridCellBoolEditor.* +%{_libdir}/erlang/man/man3/wxGridCellBoolRenderer.* +%{_libdir}/erlang/man/man3/wxGridCellChoiceEditor.* +%{_libdir}/erlang/man/man3/wxGridCellEditor.* +%{_libdir}/erlang/man/man3/wxGridCellFloatEditor.* +%{_libdir}/erlang/man/man3/wxGridCellFloatRenderer.* +%{_libdir}/erlang/man/man3/wxGridCellNumberEditor.* +%{_libdir}/erlang/man/man3/wxGridCellNumberRenderer.* +%{_libdir}/erlang/man/man3/wxGridCellRenderer.* +%{_libdir}/erlang/man/man3/wxGridCellStringRenderer.* +%{_libdir}/erlang/man/man3/wxGridCellTextEditor.* +%{_libdir}/erlang/man/man3/wxGridEvent.* +%{_libdir}/erlang/man/man3/wxGridSizer.* +%{_libdir}/erlang/man/man3/wxHelpEvent.* +%{_libdir}/erlang/man/man3/wxHtmlEasyPrinting.* +%{_libdir}/erlang/man/man3/wxHtmlLinkEvent.* +%{_libdir}/erlang/man/man3/wxHtmlWindow.* +%{_libdir}/erlang/man/man3/wxIcon.* +%{_libdir}/erlang/man/man3/wxIconBundle.* +%{_libdir}/erlang/man/man3/wxIconizeEvent.* +%{_libdir}/erlang/man/man3/wxIdleEvent.* +%{_libdir}/erlang/man/man3/wxImage.* +%{_libdir}/erlang/man/man3/wxImageList.* +%{_libdir}/erlang/man/man3/wxInitDialogEvent.* +%{_libdir}/erlang/man/man3/wxJoystickEvent.* +%{_libdir}/erlang/man/man3/wxKeyEvent.* +%{_libdir}/erlang/man/man3/wxLayoutAlgorithm.* +%{_libdir}/erlang/man/man3/wxListbook.* +%{_libdir}/erlang/man/man3/wxListBox.* +%{_libdir}/erlang/man/man3/wxListCtrl.* +%{_libdir}/erlang/man/man3/wxListEvent.* +%{_libdir}/erlang/man/man3/wxListItem.* +%{_libdir}/erlang/man/man3/wxListItemAttr.* +%{_libdir}/erlang/man/man3/wxListView.* +%{_libdir}/erlang/man/man3/wxLocale.* +%{_libdir}/erlang/man/man3/wxLogNull.* +%{_libdir}/erlang/man/man3/wxMask.* +%{_libdir}/erlang/man/man3/wxMaximizeEvent.* +%{_libdir}/erlang/man/man3/wxMDIChildFrame.* +%{_libdir}/erlang/man/man3/wxMDIClientWindow.* +%{_libdir}/erlang/man/man3/wxMDIParentFrame.* +%{_libdir}/erlang/man/man3/wxMemoryDC.* +%{_libdir}/erlang/man/man3/wxMenu.* +%{_libdir}/erlang/man/man3/wxMenuBar.* +%{_libdir}/erlang/man/man3/wxMenuEvent.* +%{_libdir}/erlang/man/man3/wxMenuItem.* +%{_libdir}/erlang/man/man3/wxMessageDialog.* +%{_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.* +%{_libdir}/erlang/man/man3/wxNavigationKeyEvent.* +%{_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.* +%{_libdir}/erlang/man/man3/wxPaintEvent.* +%{_libdir}/erlang/man/man3/wxPalette.* +%{_libdir}/erlang/man/man3/wxPaletteChangedEvent.* +%{_libdir}/erlang/man/man3/wxPanel.* +%{_libdir}/erlang/man/man3/wxPasswordEntryDialog.* +%{_libdir}/erlang/man/man3/wxPen.* +%{_libdir}/erlang/man/man3/wxPickerBase.* +%{_libdir}/erlang/man/man3/wxPopupTransientWindow.* +%{_libdir}/erlang/man/man3/wxPopupWindow.* +%{_libdir}/erlang/man/man3/wxPostScriptDC.* +%{_libdir}/erlang/man/man3/wxPreviewCanvas.* +%{_libdir}/erlang/man/man3/wxPreviewControlBar.* +%{_libdir}/erlang/man/man3/wxPreviewFrame.* +%{_libdir}/erlang/man/man3/wxPrintData.* +%{_libdir}/erlang/man/man3/wxPrintDialog.* +%{_libdir}/erlang/man/man3/wxPrintDialogData.* +%{_libdir}/erlang/man/man3/wxPrinter.* +%{_libdir}/erlang/man/man3/wxPrintout.* +%{_libdir}/erlang/man/man3/wxPrintPreview.* +%{_libdir}/erlang/man/man3/wxProgressDialog.* +%{_libdir}/erlang/man/man3/wxQueryNewPaletteEvent.* +%{_libdir}/erlang/man/man3/wxRadioBox.* +%{_libdir}/erlang/man/man3/wxRadioButton.* +%{_libdir}/erlang/man/man3/wxRegion.* +%{_libdir}/erlang/man/man3/wxSashEvent.* +%{_libdir}/erlang/man/man3/wxSashLayoutWindow.* +%{_libdir}/erlang/man/man3/wxSashWindow.* +%{_libdir}/erlang/man/man3/wxScreenDC.* +%{_libdir}/erlang/man/man3/wxScrollBar.* +%{_libdir}/erlang/man/man3/wxScrolledWindow.* +%{_libdir}/erlang/man/man3/wxScrollEvent.* +%{_libdir}/erlang/man/man3/wxScrollWinEvent.* +%{_libdir}/erlang/man/man3/wxSetCursorEvent.* +%{_libdir}/erlang/man/man3/wxShowEvent.* +%{_libdir}/erlang/man/man3/wxSingleChoiceDialog.* +%{_libdir}/erlang/man/man3/wxSizeEvent.* +%{_libdir}/erlang/man/man3/wxSizer.* +%{_libdir}/erlang/man/man3/wxSizerFlags.* +%{_libdir}/erlang/man/man3/wxSizerItem.* +%{_libdir}/erlang/man/man3/wxSlider.* +%{_libdir}/erlang/man/man3/wxSpinButton.* +%{_libdir}/erlang/man/man3/wxSpinCtrl.* +%{_libdir}/erlang/man/man3/wxSpinEvent.* +%{_libdir}/erlang/man/man3/wxSplashScreen.* +%{_libdir}/erlang/man/man3/wxSplitterEvent.* +%{_libdir}/erlang/man/man3/wxSplitterWindow.* +%{_libdir}/erlang/man/man3/wxStaticBitmap.* +%{_libdir}/erlang/man/man3/wxStaticBox.* +%{_libdir}/erlang/man/man3/wxStaticBoxSizer.* +%{_libdir}/erlang/man/man3/wxStaticLine.* +%{_libdir}/erlang/man/man3/wxStaticText.* +%{_libdir}/erlang/man/man3/wxStatusBar.* +%{_libdir}/erlang/man/man3/wxStdDialogButtonSizer.* +%{_libdir}/erlang/man/man3/wxStyledTextCtrl.* +%{_libdir}/erlang/man/man3/wxStyledTextEvent.* +%{_libdir}/erlang/man/man3/wxSysColourChangedEvent.* +%{_libdir}/erlang/man/man3/wxSystemOptions.* +%{_libdir}/erlang/man/man3/wxSystemSettings.* +%{_libdir}/erlang/man/man3/wxTaskBarIcon.* +%{_libdir}/erlang/man/man3/wxTaskBarIconEvent.* +%{_libdir}/erlang/man/man3/wxTextAttr.* +%{_libdir}/erlang/man/man3/wxTextCtrl.* +%{_libdir}/erlang/man/man3/wxTextDataObject.* +%{_libdir}/erlang/man/man3/wxTextEntryDialog.* +%{_libdir}/erlang/man/man3/wxToggleButton.* +%{_libdir}/erlang/man/man3/wxToolBar.* +%{_libdir}/erlang/man/man3/wxToolbook.* +%{_libdir}/erlang/man/man3/wxToolTip.* +%{_libdir}/erlang/man/man3/wxTopLevelWindow.* +%{_libdir}/erlang/man/man3/wxTreebook.* +%{_libdir}/erlang/man/man3/wxTreeCtrl.* +%{_libdir}/erlang/man/man3/wxTreeEvent.* +%{_libdir}/erlang/man/man3/wxUpdateUIEvent.* +%{_libdir}/erlang/man/man3/wxWindow.* +%{_libdir}/erlang/man/man3/wxWindowCreateEvent.* +%{_libdir}/erlang/man/man3/wxWindowDC.* +%{_libdir}/erlang/man/man3/wxWindowDestroyEvent.* +%{_libdir}/erlang/man/man3/wxXmlResource.* %endif -%endif # __with_wxwidgets +%endif %{__with_wxwidgets} %files xmerl %{_libdir}/erlang/lib/xmerl-*/ %if %{with doc} -%{_mandir}/man3/xmerl.* -%{_mandir}/man3/xmerl_eventp.* -%{_mandir}/man3/xmerl_sax_parser.* -%{_mandir}/man3/xmerl_scan.* -%{_mandir}/man3/xmerl_xpath.* -%{_mandir}/man3/xmerl_xs.* -%{_mandir}/man3/xmerl_xsd.* +%{_libdir}/erlang/man/man3/xmerl.* +%{_libdir}/erlang/man/man3/xmerl_eventp.* +%{_libdir}/erlang/man/man3/xmerl_sax_parser.* +%{_libdir}/erlang/man/man3/xmerl_scan.* +%{_libdir}/erlang/man/man3/xmerl_xpath.* +%{_libdir}/erlang/man/man3/xmerl_xs.* +%{_libdir}/erlang/man/man3/xmerl_xsd.* %endif +%if %{__with_emacs} +%files -n emacs-erlang +%dir %{_emacs_sitelispdir}/erlang +%doc %{_emacs_sitelispdir}/erlang/README +%{_emacs_sitelispdir}/erlang/*.elc +%{_emacs_sitestartdir}/erlang-init.el + +%files -n emacs-erlang-el +%{_emacs_sitelispdir}/erlang/*.el + +%files -n xemacs-erlang +%dir %{_xemacs_sitelispdir}/erlang +%doc %{_xemacs_sitelispdir}/erlang/README +%{_xemacs_sitelispdir}/erlang/*.elc +%{_xemacs_sitestartdir}/erlang-init.el + +%files -n xemacs-erlang-el +%{_xemacs_sitelispdir}/erlang/*.el +%endif %{__with_emacs} + %changelog -* Wed Sep 10 2025 Peter Lemenkov - 26.2.5.15-1 -- Ver. 26.2.5.15 - -* Wed Jul 23 2025 Fedora Release Engineering - 26.2.5.14-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Thu Jul 17 2025 Peter Lemenkov - 26.2.5.14-1 -- Ver. 26.2.5.14 - -* Fri Jun 20 2025 Peter Lemenkov - 26.2.5.13-3 -- Add GDB tools - -* Wed Jun 18 2025 Benjamin A. Beasley - 26.2.5.13-2 -- Rename typer (in /usr/bin) to erlang-typer; fixes RHBZ#2359567 - -* Mon Jun 16 2025 Peter Lemenkov - 26.2.5.13-1 -- Ver. 26.2.5.13 - -* Thu May 8 2025 Peter Lemenkov - 26.2.5.12-1 -- Ver. 26.2.5.12 - -* Wed Apr 16 2025 Peter Lemenkov - 26.2.5.11-1 -- Ver. 26.2.5.11 - -* Fri Mar 28 2025 Peter Lemenkov - 26.2.5.10-1 -- Ver. 26.2.5.10 - -* Mon Mar 10 2025 Zbigniew Jedrzejewski-Szmek - 26.2.5.9-2 -- Add sysusers.d config file to allow rpm to create users/groups automatically - -* Thu Feb 13 2025 Peter Lemenkov - 26.2.5.8-1 -- Ver. 26.2.5.8 - -* Tue Feb 11 2025 Peter Lemenkov - 26.2.5.7-1 -- Ver. 26.2.5.7 - -* Thu Jan 16 2025 Fedora Release Engineering - 26.2.5.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Sat Dec 7 2024 Peter Lemenkov - 26.2.5.6-1 -- Ver. 26.2.5.6 - -* Fri Nov 1 2024 Peter Lemenkov - 26.2.5.5-1 -- Ver. 26.2.5.5 - -* Wed Oct 9 2024 Peter Lemenkov - 26.2.5.4-1 -- Ver. 26.2.5.4 - -* Thu Sep 5 2024 Peter Lemenkov - 26.2.5.3-1 -- Ver. 26.2.5.3 - -* Wed Jul 17 2024 Fedora Release Engineering - 26.2.5.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Wed Jul 10 2024 Peter Lemenkov - 26.2.5.2-1 -- Ver. 26.2.5.2 - -* Wed Jun 26 2024 Peter Lemenkov - 26.2.5.1-1 -- Ver. 26.2.5.1 - -* Sat May 4 2024 Peter Lemenkov - 26.2.5-1 -- Ver. 26.2.5 - -* Sat Apr 13 2024 Peter Lemenkov - 26.2.4-1 -- Ver. 26.2.4 - -* Mon Feb 12 2024 Peter Lemenkov - 26.2.2-1 -- Ver. 26.2.2 - -* Wed Jan 24 2024 Fedora Release Engineering - 26.2.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 26.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Mon Dec 18 2023 Peter Lemenkov - 26.2.1-1 -- Ver. 26.2.1 - -* Wed Dec 13 2023 Peter Lemenkov - 26.2-1 -- Ver. 26.2 - -* Fri Oct 13 2023 Peter Lemenkov - 26.1.2-1 -- Ver. 26.1.2 - -* Fri Sep 29 2023 Peter Lemenkov - 26.1.1-1 -- Ver. 26.1.1 - -* Wed Sep 20 2023 Peter Lemenkov - 26.1-1 -- Ver. 26.1 - -* Tue Aug 8 2023 Peter Lemenkov - 26.0.2-3 -- Reenable OpenSSL 3 - -* Wed Jul 19 2023 Fedora Release Engineering - 26.0.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sat Jul 1 2023 Peter Lemenkov - 26.0.2-1 -- Ver. 26.0.2 - -* Fri Jun 9 2023 Peter Lemenkov - 26.0.1-1 -- Ver. 26.0.1 - -* Sat May 20 2023 Peter Lemenkov - 26.0-1 -- Ver. 26.0 - -* Sat May 6 2023 Peter Lemenkov - 25.3.2-1 -- Ver. 25.3.2 - -* Thu Apr 27 2023 Peter Lemenkov - 25.3.1-1 -- Ver. 25.3.1 - -* Wed Mar 8 2023 Peter Lemenkov - 25.3-1 -- Ver. 25.3 - -* Fri Feb 17 2023 Peter Lemenkov - 25.2.3-1 -- Ver. 25.2.3 - -* Mon Jan 30 2023 Peter Lemenkov - 25.2.2-1 -- Ver. 25.2.2 - -* Thu Jan 19 2023 Fedora Release Engineering - 25.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Jan 18 2023 Peter Lemenkov - 25.2.1-1 -- Ver. 25.2.1 - -* Fri Jan 6 2023 Peter Lemenkov - 25.2-3 -- Fix deps - -* Wed Jan 4 2023 Peter Lemenkov - 25.2-2 -- LSP applications require source code to be available (rhbz #2157170). Let's - restore it in a separate package - -* Wed Dec 14 2022 Peter Lemenkov - 25.2-1 -- Ver. 25.2 - -* Sun Nov 27 2022 Mamoru TASAKA - 25.1.2-3 -- Rebuild due to wxGLCanvas ABI change - -* Thu Nov 24 2022 Florian Weimer - 25.1.2-2 -- Fix C99 compatibility issues in configure checks - -* Tue Oct 25 2022 Peter Lemenkov - 25.1.2-1 -- Ver. 25.1.2 - -* Mon Oct 3 2022 Peter Lemenkov - 25.1.1-1 -- Ver. 25.1.1 - -* Wed Sep 21 2022 Peter Lemenkov - 25.1-1 -- Ver. 25.1 - -* Thu Aug 18 2022 Peter Lemenkov - 25.0.4-1 -- Ver. 25.0.4 - -* Thu Jul 28 2022 Peter Lemenkov - 25.0.3-3 -- Rebuild with new wxWidgets - -* Thu Jul 21 2022 Fedora Release Engineering - 25.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Jul 16 2022 Peter Lemenkov - 25.0.3-1 -- Ver. 25.0.3 - -* Tue Jul 12 2022 Peter Lemenkov - 25.0.2-1 -- Ver. 25.0.2 - -* Thu Jun 23 2022 Peter Lemenkov - 24.3.4.2-1 -- Ver. 24.3.4.2 - -* Wed Jun 8 2022 Peter Lemenkov - 24.3.4.1-1 -- Ver. 24.3.4.1 - -* Tue May 24 2022 Peter Lemenkov - 24.3.4-2 -- Downgrade to OpenSSL 1.x - -* Wed May 4 2022 Peter Lemenkov - 24.3.4-1 -- Ver. 24.3.4 - -* Fri Apr 8 2022 Peter Lemenkov - 24.3.3-2 -- Temporarily disable FIPS (doesn't work reliably with OpenSSL 3.0 yet) - -* Tue Mar 29 2022 Peter Lemenkov - 24.3.3-1 -- Ver. 24.3.3 -- Doc sub-package no longermarked as noarch (contains links to _libdir) - -* Mon Mar 28 2022 John Eckersberg - 24.2.2-2 -- Keep documentation chunks in the code path (rhbz#2068758) - -* Tue Mar 1 2022 Peter Lemenkov - 24.2.2-1 -- Ver. 24.2.2 - -* Sat Feb 05 2022 Jiri Vanek - 24.2.1-2 -- Rebuilt for java-17-openjdk as system jdk - -* Wed Jan 26 2022 Peter Lemenkov - 24.2.1-1 -- Ver. 24.2.1 - -* Thu Jan 20 2022 Fedora Release Engineering - 24.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Dec 15 2021 Peter Lemenkov - 24.2-1 -- Ver. 24.2 - -* Mon Nov 22 2021 Peter Lemenkov - 24.1.7-1 -- Ver. 24.1.7 - -* Thu Nov 18 2021 Peter Lemenkov - 24.1.6-1 -- Ver. 24.1.6 - -* Sat Nov 13 2021 Peter Lemenkov - 24.1.5-1 -- Ver. 24.1.5 - -* Tue Nov 2 2021 Peter Lemenkov - 24.1.4-1 -- Ver. 24.1.4 - -* Thu Oct 28 2021 Peter Lemenkov - 24.1.3-1 -- Ver. 24.1.3 - -* Tue Oct 12 2021 Peter Lemenkov - 24.1.2-2 -- Fix FTBFS with OpenSSL 3.0 - -* Tue Oct 5 2021 Peter Lemenkov - 24.1.2-1 -- Ver. 24.1.2 - -* Mon Oct 4 2021 Peter Lemenkov - 24.1.1-1 -- Ver. 24.1.1 - -* Thu Sep 23 2021 Peter Lemenkov - 24.1-1 -- Ver. 24.1 - -* Tue Sep 14 2021 Sahana Prasad - 24.0.6-2 -- Rebuilt with OpenSSL 3.0.0 - -* Fri Sep 3 2021 Peter Lemenkov - 24.0.6-1 -- Ver. 24.0.6 - -* Tue Aug 3 2021 Peter Lemenkov - 24.0.5-1 -- Ver. 24.0.5 - -* Thu Jul 22 2021 Peter Lemenkov - 24.0.4-1 -- Ver. 24.0.4 - -* Wed Jul 21 2021 Fedora Release Engineering - 24.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jun 29 2021 Peter Lemenkov - 24.0.3-1 -- Ver. 24.0.3 - -* Tue Jun 01 2021 Peter Lemenkov - 24.0.2-1 -- Ver. 24.0.2 - -* Fri May 21 2021 John Eckersberg - 24.0.1-1 -- Ver. 24.0.1 - -* Wed May 12 2021 Peter Lemenkov - 24.0-1 -- Ver. 24.0 - -* Wed Apr 21 2021 Peter Lemenkov - 24.0-0.2.rc3 -- Ver. 24.0-rc3 - -* Sat Apr 3 2021 Peter Lemenkov - 24.0-0.1.rc2 -- Ver. 24.0-rc2 -- Removed hipe - -* Tue Mar 30 2021 Peter Lemenkov - 23.3.1-1 -- Ver. 23.3.1 - -* Wed Mar 24 2021 Peter Lemenkov - 23.3-1 -- Ver. 23.3 - -* Fri Mar 5 2021 Peter Lemenkov - 23.2.7-1 -- Ver. 23.2.7 - -* Thu Feb 25 2021 Peter Lemenkov - 23.2.6-1 -- Ver. 23.2.6 - -* Tue Feb 16 2021 Peter Lemenkov - 23.2.5-1 -- Ver. 23.2.5 - -* Thu Feb 4 2021 John Eckersberg - 23.2.4-1 -- Ver. 23.2.4 - -* Tue Jan 26 2021 Fedora Release Engineering - 23.2.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jan 20 2021 Peter Lemenkov - 23.2.3-1 -- Ver. 23.2.3 - -* Fri Jan 15 2021 Peter Lemenkov - 23.2.2-1 -- Ver. 23.2.2 -- Disable XEmacs support (dead upstream, scheduled for removal from Fedora) - -* Tue Dec 22 2020 Peter Lemenkov - 23.2.1-1 -- Ver. 23.2.1 - -* Thu Dec 17 2020 Peter Lemenkov - 23.2-1 -- Ver. 23.2 - -* Fri Dec 11 2020 Peter Lemenkov - 23.1.5-1 -- Ver. 23.1.5 - -* Fri Nov 20 2020 Peter Lemenkov - 23.1.4-1 -- Ver. 23.1.4 - -* Tue Nov 17 2020 Peter Lemenkov - 23.1.3-1 -- Ver. 23.1.3 - -* Sat Oct 3 2020 Peter Lemenkov - 23.1.1-1 -- Ver. 23.1.1 - -* Tue Sep 15 2020 Peter Lemenkov - 23.0.4-1 -- Ver. 23.0.4 - -* Mon Jul 27 2020 Fedora Release Engineering - 23.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Jul 20 2020 Peter Lemenkov - 23.0.3-1 -- Ver. 23.0.3 - -* Fri Jul 10 2020 Jiri Vanek - 23.0.2-2 -- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 - -* Thu May 28 2020 Peter Lemenkov - 23.0.2-1 -- Ver. 23.0.2 - -* Wed May 20 2020 Peter Lemenkov - 23.0.1-1 -- Ver. 23.0.1 - -* Wed May 13 2020 Peter Lemenkov - 23.0-1 -- Ver. 23.0 - -* Thu Apr 23 2020 Peter Lemenkov - 23.0-0.2.rc3 -- Ver. 23.0-rc3 - -* Sun Apr 19 2020 Peter Lemenkov - 23.0-0.1.rc2 -- Ver. 23.0-rc2 - -* Thu Apr 9 2020 Peter Lemenkov - 22.3.2-1 -- Ver. 22.3.2 - -* Fri Feb 28 2020 Peter Lemenkov - 22.2.8-1 -- Ver. 22.2.8 - -* Fri Feb 21 2020 Peter Lemenkov - 22.2.7-2 -- Fix building with GCC 10 (-fno-common) - -* Fri Feb 21 2020 Peter Lemenkov - 22.2.7-1 -- Ver. 22.2.7 - -* Thu Feb 6 2020 Peter Lemenkov - 22.2.6-1 -- Ver. 22.2.6 - -* Tue Jan 28 2020 Fedora Release Engineering - 22.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Mon Jan 13 2020 Peter Lemenkov - 22.2.2-1 -- Ver. 22.2.2 - -* Sat Dec 28 2019 Peter Lemenkov - 22.2.1-1 -- Ver. 22.2.1 - -* Thu Nov 21 2019 John Eckersberg - 22.1.8-1 -- Ver. 22.1.8 -- Re-enable s390x, but disable kernel polling, see rhbz#1770256 - -* Mon Nov 11 2019 John Eckersberg - 22.1.7-1 -- Ver. 22.1.7 -- Add ExcludeArch for s390x, see rhbz#1770256 - -* Tue Nov 5 2019 John Eckersberg - 22.1.5-1 -- Ver. 22.1.5 - -* Mon Sep 16 2019 Peter Lemenkov - 22.0.7-3 -- Enable arches disabled in a previous build - -* Wed Sep 11 2019 Peter Lemenkov - 22.0.7-2 -- Disable arches with a broken builders -- Expose a correct NIF API version - -* Tue Jul 30 2019 Peter Lemenkov - 22.0.7-1 -- Ver. 22.0.7 -- Removed otp_mibs application - -* Wed Jul 24 2019 Fedora Release Engineering - 21.3.8.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Mon Jul 15 2019 Peter Lemenkov - 21.3.8.6-1 -- Ver. 21.3.8.6 - -* Mon Jul 8 2019 Peter Lemenkov - 21.3.8.5-1 -- Ver. 21.3.8.5 - -* Wed Jun 19 2019 Peter Lemenkov - 21.3.8.4-1 -- Ver. 21.3.8.4 - -* Tue Jun 04 2019 Peter Lemenkov - 21.3.8.3-1 -- Ver. 21.3.8.3 - -* Mon May 20 2019 Peter Lemenkov - 21.3.8.2-1 -- Ver. 21.3.8.2 - -* Fri May 17 2019 Peter Lemenkov - 21.3.8.1-1 -- Ver. 21.3.8.1 - -* Wed May 01 2019 Peter Lemenkov - 21.3.7-1 -- Ver. 21.3.7 - -* Thu Apr 18 2019 Peter Lemenkov - 21.3.6-1 -- Ver. 21.3.6 - -* Mon Apr 15 2019 Peter Lemenkov - 21.3.5-1 -- Ver. 21.3.5 - -* Sat Apr 13 2019 Peter Lemenkov - 21.3.4-1 -- Ver. 21.3.4 - -* Tue Apr 02 2019 Peter Lemenkov - 21.3.3-1 -- Ver. 21.3.3 - -* Fri Mar 22 2019 Peter Lemenkov - 21.3.2-1 -- Ver. 21.3.2 - -* Tue Mar 19 2019 Peter Lemenkov - 21.3.1-1 -- Ver. 21.3.1 - -* Tue Mar 12 2019 Peter Lemenkov - 21.3-1 -- Ver. 21.3 - -* Thu Mar 07 2019 Peter Lemenkov - 21.2.7-1 -- Ver. 21.2.7 - -* Tue Feb 19 2019 Kalev Lember - 21.2.6-2 -- Rebuilt against fixed atk (#1626575) - -* Tue Feb 19 2019 Peter Lemenkov - 21.2.6-1 -- Ver. 21.2.6 - -* Tue Feb 05 2019 Peter Lemenkov - 21.2.5-1 -- Ver. 21.2.5 -- Revert: Fix EC detection - -* Mon Feb 04 2019 Peter Lemenkov - 21.2.4-2 -- Fix EC detection - -* Thu Jan 31 2019 Peter Lemenkov - 21.2.4-1 -- Ver. 21.2.4 -- Removed cosEvent, cosEventDomain, cosFileTransfer, cosNotification, - cosProperty, cosTime, cosTransactions, ic, orber applications -- Added ftp, tftp applications -- Disabled XEmacs support (fails to build) - -* Thu Jan 31 2019 Fedora Release Engineering - 20.3.8.18-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Tue Jan 22 2019 Peter Lemenkov - 20.3.8.18-1 -- Ver. 20.3.8.18 - -* Tue Jan 15 2019 Peter Lemenkov - 20.3.8.17-2 -- Fix issue with nodes info querying -- Enable verbose build logs - -* Thu Jan 10 2019 Peter Lemenkov - 20.3.8.17-1 -- Ver. 20.3.8.17 - -* Tue Jan 08 2019 Peter Lemenkov - 20.3.8.16-1 -- Ver. 20.3.8.16 - -* Mon Dec 10 2018 Peter Lemenkov - 20.3.8.15-1 -- Ver. 20.3.8.15 - -* Fri Nov 16 2018 Peter Lemenkov - 20.3.8.14-1 -- Ver. 20.3.8.14 -- Fix epmd systemd files - -* Thu Sep 20 2018 Peter Lemenkov - 20.3.8.9-2 -- Install man-pages into system-wide directories (as Debian already did). - -* Tue Sep 18 2018 Peter Lemenkov - 20.3.8.9-1 -- Ver. 20.3.8.9 - -* Wed Aug 29 2018 Peter Lemenkov - 20.3.8.8-1 -- Ver. 20.3.8.8 - -* Wed Aug 15 2018 Peter Lemenkov - 20.3.8.6-1 -- Ver. 20.3.8.6 - -* Fri Aug 10 2018 Peter Lemenkov - 20.3.8.5-1 -- Ver. 20.3.8.5 - -* Fri Aug 03 2018 Peter Lemenkov - 20.3.8.4-1 -- Ver. 20.3.8.4 - -* Tue Jul 31 2018 Florian Weimer - 20.3.8.3-2 -- Rebuild with fixed binutils - -* Mon Jul 30 2018 Peter Lemenkov - 20.3.8.3-1 -- Ver. 20.3.8.3 - -* Thu Jul 12 2018 Fedora Release Engineering - 20.3.8.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Jul 10 2018 Peter Lemenkov - 20.3.8.2-2 -- Fix FTBFS on F-29 and higher - -* Tue Jul 10 2018 Peter Lemenkov - 20.3.8.2-1 -- Ver. 20.3.8.2 - -* Wed Jun 27 2018 Peter Lemenkov - 20.3.8.1-1 -- Ver. 20.3.8.1 - -* Thu Jun 14 2018 Peter Lemenkov - 20.3.8-1 -- Ver. 20.3.8 - -* Fri May 18 2018 Troy Dawson - 20.3.6-2 -- Make xemacs an optional component - -* Tue May 15 2018 Peter Lemenkov - 20.3.6-1 -- Ver. 20.3.6 - -* Fri Apr 06 2018 Peter Lemenkov - 20.3.2-2 -- Allow building against OpenSSL 1.1.0+ - -* Fri Mar 23 2018 Peter Lemenkov - 20.3.2-1 -- Ver. 20.3.2 - -* Tue Mar 20 2018 Richard W.M. Jones - 20.3-2 -- Disable fop on riscv64. - -* Wed Mar 14 2018 Peter Lemenkov - 20.3 -- Ver. 20.3 - -* Thu Feb 22 2018 Peter Lemenkov - 20.2.4-1 -- Ver. 20.2.4 - -* Tue Feb 20 2018 Peter Lemenkov - 20.2.3-1 -- Ver. 20.2.3 -- Removed gs (also removed tcl/tk dependency), percept -- Application typer was merged into dialyzer -- NIF version bumped up to 2.13 - -* Wed Feb 07 2018 Fedora Release Engineering - 19.3.6.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Dec 19 2017 Peter Lemenkov - 19.3.6.5 -- Ver. 19.3.6.5 - -* Mon Nov 27 2017 Peter Lemenkov - 19.3.6.4 -- Ver. 19.3.6.4 -- ssl: Countermeasurements for Bleichenbacher attack - -* Tue Aug 1 2017 Randy Barlow - 19.3.6.2-2 -- Search /usr/share/erlang/lib for libraries as well - -* Mon Jul 31 2017 Peter Lemenkov - 19.3.6.2-1 -- Ver. 19.3.6.2 - -* Wed Jul 26 2017 Fedora Release Engineering - 19.3.6.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Jun 30 2017 Peter Lemenkov - 19.3.6.1-1 -- Ver. 19.3.6.1 - -* Fri Jun 16 2017 Peter Lemenkov - 19.3.6-2 +* Fri Jun 16 2017 Peter Lemenkov - 18.3.4.5-4 - Fix EPMD port assignment in IPv6 env. (GH#1487) -* Tue Jun 13 2017 Peter Lemenkov - 19.3.6-1 -- Ver. 19.3.6 +* Wed Jun 14 2017 Peter Lemenkov - 18.3.4.5-3 +- Fix DNS resolution if IPv4 is unavailable -* Wed Jun 7 2017 Peter Lemenkov - 19.3.5-1 -- Ver. 19.3.5 -- Enabled tests - -* Fri May 12 2017 Peter Lemenkov - 19.3.4-1 -- Ver. 19.3.4 -- Require javapackages-tools (/use/share/java) -- Use /dev/null as a homedir for EPMD (its shell is /sbin/nologin anyway) -- Removed beam appilciation (non-SMP VM). - -* Tue May 2 2017 Peter Lemenkov - 19.3.3-1 -- Ver. 19.3.3 - -* Mon Apr 24 2017 Peter Lemenkov - 19.3.2-1 -- Ver. 19.3.2 - -* Tue Apr 4 2017 Peter Lemenkov - 19.3.1-1 -- Ver. 19.3.1 - -* Tue Mar 21 2017 Peter Lemenkov - 19.3-2 +* Tue Mar 21 2017 Peter Lemenkov - 18.3.4.5-2 - Fix for CVE-2016-10253 -* Wed Mar 15 2017 Peter Lemenkov - 19.3-1 -- Ver. 19.3 +* Thu Feb 2 2017 Peter Lemenkov - 18.3.4.5-1 +- Ver. 18.3.4.5 -* Wed Feb 8 2017 Peter Lemenkov - 19.2.3-1 -- Ver. 19.2.3 - -* Wed Feb 1 2017 Peter Lemenkov - 19.2.2-1 -- Ver. 19.2.2 - -* Wed Jan 18 2017 Peter Lemenkov - 19.2.1-1 -- Ver. 19.2.1 - -* Wed Jan 11 2017 Peter Lemenkov - 19.2-1 -- Ver. 19.2 - -* Wed Nov 23 2016 Peter Lemenkov - 19.1.6-2 -- Fix HiPE by disabling -fpie -- Fix dialyzer generation - -* Wed Nov 9 2016 Peter Lemenkov - 19.1.6-1 -- Ver. 19.1.6 - -* Mon Nov 7 2016 Peter Lemenkov - 19.1.5-1 -- Ver. 19.1.5 - -* Fri Oct 14 2016 Peter Lemenkov - 19.1.4-1 -- Ver. 19.1.4 - -* Tue Oct 11 2016 Peter Lemenkov - 19.1.3-1 -- Ver. 19.1.3 - -* Thu Oct 6 2016 Peter Lemenkov - 19.1.2-1 -- Ver. 19.1.2 - -* Tue Oct 4 2016 Peter Lemenkov - 19.1.1-1 -- Ver. 19.1.1 - -* Wed Sep 14 2016 Peter Lemenkov - 19.0.7-1 -- Ver. 19.0.7 - -* Wed Sep 14 2016 Peter Lemenkov - 19.0.6-1 -- Ver. 19.0.6 - -* Tue Aug 23 2016 Peter Lemenkov - 19.0.5-1 -- Ver. 19.0.5 - -* Tue Aug 16 2016 Peter Lemenkov - 19.0.4-1 -- Ver. 19.0.4 - -* Fri Aug 12 2016 Michal Toman - 19.0.2-2 -- Disable doc on MIPS - -* Wed Jul 27 2016 Peter Lemenkov - 19.0.2-1 -- Ver. 19.0.2 -- The following packages were removed - ose, test_server (merged into common_test), webtool -- Merge (x)emacs subpackages into erlang-typer +* Tue Aug 16 2016 Peter Lemenkov - 18.3.4.4-1 +- Ver. 18.3.4.4 * Tue Jul 26 2016 Peter Lemenkov - 18.3.4.2-1 - Ver. 18.3.4.2 @@ -3056,7 +2905,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests - new release R12B-0 * Wed Dec 05 2007 Release Engineering - R11B-6 -- Rebuild for deps + - Rebuild for deps * Sun Aug 19 2007 Gerard Milmeister - R11B-5.3 - fix some permissions 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 270792a..8edb62e 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 42af9c87dc..c017e0a4ed 100644 +index 8e55fa78c9..9512faa06e 100644 --- a/erts/etc/common/Makefile.in +++ b/erts/etc/common/Makefile.in -@@ -552,10 +552,6 @@ endif +@@ -551,10 +551,6 @@ endif ifneq ($(INSTALL_TOP_BIN),) $(INSTALL_PROGRAM) $(INSTALL_TOP_BIN) "$(RELEASE_PATH)" endif @@ -21,10 +21,10 @@ index 42af9c87dc..c017e0a4ed 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 b00dd09f1a..2147774f50 100644 +index 6634ae31d3..fa1895633e 100644 --- a/erts/etc/unix/Install.src +++ b/erts/etc/unix/Install.src -@@ -143,14 +143,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 5cadc0c..dd0a326 100644 --- a/otp-0002-Remove-rpath.patch +++ b/otp-0002-Remove-rpath.patch @@ -5,15 +5,28 @@ 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 aedc9e7a13..b27c2aa01b 100644 +index e66c0ca916..574cdf5721 100644 --- a/lib/crypto/c_src/Makefile.in +++ b/lib/crypto/c_src/Makefile.in -@@ -147,7 +147,7 @@ endif - endif +@@ -90,7 +90,7 @@ endif + DYNAMIC_CRYPTO_LIB=@SSL_DYNAMIC_ONLY@ - ifeq ($(DYNAMIC_OR_WIN_CRYPTO_LIB),yes) + ifeq ($(DYNAMIC_CRYPTO_LIB),yes) -SSL_DED_LD_RUNTIME_LIBRARY_PATH = @SSL_DED_LD_RUNTIME_LIBRARY_PATH@ +SSL_DED_LD_RUNTIME_LIBRARY_PATH = CRYPTO_LINK_LIB=$(SSL_DED_LD_RUNTIME_LIBRARY_PATH) -L$(SSL_LIBDIR) -l$(SSL_CRYPTO_LIBNAME) EXTRA_FLAGS = -DHAVE_DYNAMIC_CRYPTO_LIB else +diff --git a/lib/crypto/priv/Makefile b/lib/crypto/priv/Makefile +index ff9d3e1dc9..d3aba77808 100644 +--- a/lib/crypto/priv/Makefile ++++ b/lib/crypto/priv/Makefile +@@ -61,7 +61,7 @@ OBJS = $(OBJDIR)/crypto.o + # ---------------------------------------------------- + + $(SO_NIFLIB): $(OBJS) +- $(SO_LD) $(SO_LDFLAGS) -L$(SO_SSL_LIBDIR) -Wl,-R$(SO_SSL_LIBDIR) \ ++ $(SO_LD) $(SO_LDFLAGS) -L$(SO_SSL_LIBDIR) \ + -o $@ $^ -lcrypto + + $(DLL_NIFLIB): $(OBJS) diff --git a/otp-0003-Do-not-install-C-sources.patch b/otp-0003-Do-not-install-C-sources.patch index 23056c4..c8cfdab 100644 --- a/otp-0003-Do-not-install-C-sources.patch +++ b/otp-0003-Do-not-install-C-sources.patch @@ -14,46 +14,86 @@ 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 82a6b6e87a..5f2fe8ba7d 100644 +index 2b72e1a214..0522562a1e 100644 --- a/lib/asn1/c_src/Makefile +++ b/lib/asn1/c_src/Makefile -@@ -137,8 +137,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk - release_spec: opt - $(INSTALL_DIR) "$(RELSYSDIR)/priv/lib" +@@ -143,8 +143,6 @@ release_spec: opt + ifneq ($(findstring ose,$(TARGET)),ose) $(INSTALL_PROGRAM) $(NIF_SHARED_OBJ_FILE) "$(RELSYSDIR)/priv/lib" + endif - $(INSTALL_DIR) "$(RELSYSDIR)/c_src" - $(INSTALL_DATA) *.c "$(RELSYSDIR)/c_src" release_docs_spec: +diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in +index 574cdf5721..428c3163f5 100644 +--- a/lib/crypto/c_src/Makefile.in ++++ b/lib/crypto/c_src/Makefile.in +@@ -200,14 +200,10 @@ docs: + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/priv/obj" + $(INSTALL_DIR) "$(RELSYSDIR)/priv/lib" +- $(INSTALL_DATA) $(NIF_MAKEFILE) "$(RELSYSDIR)/priv/obj" + ifneq ($(findstring ose,$(TARGET)),ose) +- $(INSTALL_PROGRAM) $(CRYPTO_OBJS) "$(RELSYSDIR)/priv/obj" + $(INSTALL_PROGRAM) $(NIF_LIB) "$(RELSYSDIR)/priv/lib" + ifeq ($(DYNAMIC_CRYPTO_LIB),yes) +- $(INSTALL_PROGRAM) $(CALLBACK_OBJS) "$(RELSYSDIR)/priv/obj" + $(INSTALL_PROGRAM) $(CALLBACK_LIB) "$(RELSYSDIR)/priv/lib" + endif + endif diff --git a/lib/erl_interface/src/Makefile.in b/lib/erl_interface/src/Makefile.in -index fa1ea3cd39..b977b6afe5 100644 +index 777d709b1e..57917ae7ee 100644 --- a/lib/erl_interface/src/Makefile.in +++ b/lib/erl_interface/src/Makefile.in -@@ -715,13 +715,11 @@ ifeq (@DYNAMIC_LIB@, yes) - endif +@@ -905,14 +905,14 @@ ifneq ($(EXE_TARGETS),) $(INSTALL_PROGRAM) $(EXE_TARGETS) "$(RELSYSDIR)/bin" + endif $(INSTALL_DATA) $(EXTRA) "$(RELSYSDIR)/src" - $(INSTALL_DATA) connect/*.[ch] "$(RELSYSDIR)/src/connect" - $(INSTALL_DATA) decode/*.[ch] "$(RELSYSDIR)/src/decode" - $(INSTALL_DATA) encode/*.[ch] "$(RELSYSDIR)/src/encode" - $(INSTALL_DATA) epmd/*.[ch] "$(RELSYSDIR)/src/epmd" - $(INSTALL_DATA) misc/*.[ch] "$(RELSYSDIR)/src/misc" -- $(INSTALL_DATA) global/*.[ch] "$(RELSYSDIR)/src/global" +- $(INSTALL_DATA) registry/*.[ch] "$(RELSYSDIR)/src/registry" +- $(INSTALL_DATA) legacy/*.[ch] "$(RELSYSDIR)/src/legacy" - $(INSTALL_DATA) prog/*.[ch] "$(RELSYSDIR)/src/prog" + $(INSTALL_DATA) connect/*.h "$(RELSYSDIR)/src/connect" + $(INSTALL_DATA) decode/*.h "$(RELSYSDIR)/src/decode" + $(INSTALL_DATA) encode/*.h "$(RELSYSDIR)/src/encode" + $(INSTALL_DATA) epmd/*.h "$(RELSYSDIR)/src/epmd" + $(INSTALL_DATA) misc/*.h "$(RELSYSDIR)/src/misc" ++ $(INSTALL_DATA) registry/*.h "$(RELSYSDIR)/src/registry" ++ $(INSTALL_DATA) legacy/*.h "$(RELSYSDIR)/src/legacy" ++ $(INSTALL_DATA) prog/*.h "$(RELSYSDIR)/src/prog" release_docs: +diff --git a/lib/ic/c_src/Makefile.in b/lib/ic/c_src/Makefile.in +index b9f92a0925..9612f24f93 100644 +--- a/lib/ic/c_src/Makefile.in ++++ b/lib/ic/c_src/Makefile.in +@@ -145,12 +145,10 @@ $(OBJDIR)/%.o: %.c + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/c_src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DIR) "$(RELSYSDIR)/priv/lib" + $(INSTALL_DIR) "$(RELEASE_PATH)/usr/include" + $(INSTALL_DIR) "$(RELEASE_PATH)/usr/lib" +- $(INSTALL_DATA) ic.c ic_tmo.c "$(RELSYSDIR)/c_src" + $(INSTALL_DATA) $(IDL_FILES) $(H_FILES) "$(RELSYSDIR)/include" + $(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 3649e2c392..d8c5c68b99 100644 +index 045b6d871a..39be02ad5e 100644 --- a/lib/megaco/src/flex/Makefile.in +++ b/lib/megaco/src/flex/Makefile.in -@@ -251,7 +251,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) @@ -63,7 +103,7 @@ index 3649e2c392..d8c5c68b99 100644 endif diff --git a/lib/odbc/c_src/Makefile.in b/lib/odbc/c_src/Makefile.in -index d1b26743a6..cf8faae1f5 100644 +index 685eb5d150..6c8a432fb0 100644 --- a/lib/odbc/c_src/Makefile.in +++ b/lib/odbc/c_src/Makefile.in @@ -129,11 +129,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk @@ -79,7 +119,7 @@ index d1b26743a6..cf8faae1f5 100644 endif diff --git a/lib/os_mon/c_src/Makefile.in b/lib/os_mon/c_src/Makefile.in -index 27b156a2c9..f11ff303b6 100644 +index e9fc5f4139..ac9fb73abb 100644 --- a/lib/os_mon/c_src/Makefile.in +++ b/lib/os_mon/c_src/Makefile.in @@ -126,8 +126,6 @@ $(OBJDIR)/memsup.o: memsup.h @@ -91,3 +131,31 @@ index 27b156a2c9..f11ff303b6 100644 $(INSTALL_DIR) "$(RELSYSDIR)/priv/bin" $(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 448b8c62c2..860d5040b2 100644 +--- a/lib/runtime_tools/c_src/Makefile.in ++++ b/lib/runtime_tools/c_src/Makefile.in +@@ -157,10 +157,8 @@ docs: + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/priv/obj" + $(INSTALL_DIR) "$(RELSYSDIR)/priv/lib" + ifneq ($(findstring ose,$(TARGET)),ose) +- $(INSTALL_PROGRAM) $(DYNTRACE_OBJS) "$(RELSYSDIR)/priv/obj" + $(INSTALL_PROGRAM) $(NIF_LIB) $(SOLIBS) "$(RELSYSDIR)/priv/lib" + endif + +diff --git a/lib/tools/c_src/Makefile.in b/lib/tools/c_src/Makefile.in +index 66bba229f6..eea37fcab6 100644 +--- a/lib/tools/c_src/Makefile.in ++++ b/lib/tools/c_src/Makefile.in +@@ -198,8 +198,6 @@ include ../vsn.mk + RELSYSDIR = $(RELEASE_PATH)/lib/tools-$(TOOLS_VSN) + + release_spec: all +- $(INSTALL_DIR) "$(RELSYSDIR)/c_src" +- $(INSTALL_DATA) $(EMEM_SRCS) $(EMEM_HEADERS) "$(RELSYSDIR)/c_src" + ifneq ($(PROGS),) + $(INSTALL_DIR) "$(RELSYSDIR)/bin" + $(INSTALL_PROGRAM) $(PROGS) "$(RELSYSDIR)/bin" diff --git a/otp-0004-Do-not-install-Java-sources.patch b/otp-0004-Do-not-install-Java-sources.patch index a8037ea..b463baa 100644 --- a/otp-0004-Do-not-install-Java-sources.patch +++ b/otp-0004-Do-not-install-Java-sources.patch @@ -4,11 +4,24 @@ 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 d9100cf267..6886c7132d 100644 +--- a/lib/ic/java_src/com/ericsson/otp/ic/Makefile ++++ b/lib/ic/java_src/com/ericsson/otp/ic/Makefile +@@ -113,8 +113,6 @@ docs: + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/java_src/com/ericsson/otp/ic" +- $(INSTALL_DATA) $(JAVA_FILES) "$(RELSYSDIR)/java_src/com/ericsson/otp/ic" + $(INSTALL_DIR) "$(RELSYSDIR)/priv" + $(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 089cf4ab1a..404654a437 100644 +index 1c8364e951..34b64a8ed8 100644 --- a/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile +++ b/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile -@@ -123,8 +123,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 1965881..a9b2589 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 8e3882bfdc..ea999cf9c7 100644 +index 0c5acd9740..5f8f1e3920 100644 --- a/lib/os_mon/doc/src/Makefile +++ b/lib/os_mon/doc/src/Makefile -@@ -31,11 +31,16 @@ APPLICATION=os_mon +@@ -36,12 +36,17 @@ RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN) # Target Specs # ---------------------------------------------------- XML_APPLICATION_FILES = ref_man.xml @@ -21,32 +21,33 @@ index 8e3882bfdc..ea999cf9c7 100644 XML_REF3_FILES = cpu_sup.xml \ disksup.xml \ memsup.xml \ + os_mon_mib.xml \ os_sup.xml \ - nteventlog.xml + $(NTEVENTLOG_DOCFILE) - XML_REF6_FILES = os_mon_app.xml + XML_REF6_FILES = os_mon_app.xml diff --git a/lib/os_mon/src/Makefile b/lib/os_mon/src/Makefile -index e28fb12548..ee32f3946f 100644 +index 9aa068cb91..1003d24be9 100644 --- a/lib/os_mon/src/Makefile +++ b/lib/os_mon/src/Makefile -@@ -34,7 +34,13 @@ RELSYSDIR = $(RELEASE_PATH)/lib/os_mon-$(VSN) +@@ -34,8 +34,13 @@ RELSYSDIR = $(RELEASE_PATH)/lib/os_mon-$(VSN) # ---------------------------------------------------- # Target Specs # ---------------------------------------------------- --MODULES= disksup memsup cpu_sup os_mon os_mon_mib os_sup os_mon_sysinfo nteventlog +ifeq ($(findstring win32,$(TARGET)),win32) +NTEVENTLOG=nteventlog +else +NTEVENTLOG= +endif -+MODULES= disksup memsup cpu_sup os_mon os_mon_mib os_sup os_mon_sysinfo \ + MODULES= disksup memsup cpu_sup os_mon os_mon_mib os_sup os_mon_sysinfo \ +- nteventlog + $(NTEVENTLOG) INCLUDE=../include CSRC=../c_src -@@ -78,7 +84,11 @@ docs: +@@ -79,7 +84,11 @@ docs: # ---------------------------------------------------- $(APP_TARGET): $(APP_SRC) ../vsn.mk diff --git a/otp-0006-Add-extra-search-directory.patch b/otp-0006-Add-extra-search-directory.patch deleted file mode 100644 index 2f872ef..0000000 --- a/otp-0006-Add-extra-search-directory.patch +++ /dev/null @@ -1,32 +0,0 @@ -From: Peter Lemenkov -Date: Wed, 2 Aug 2017 16:12:19 +0300 -Subject: [PATCH] Add extra search directory - -Signed-off-by: Peter Lemenkov - -diff --git a/lib/kernel/src/code_server.erl b/lib/kernel/src/code_server.erl -index 7327636751..2e92e77598 100644 ---- a/lib/kernel/src/code_server.erl -+++ b/lib/kernel/src/code_server.erl -@@ -90,11 +90,17 @@ init(Ref, Parent, [Root,Mode]) -> - IPath = - case Mode of - interactive -> -- LibDir = filename:append(Root, "lib"), -- {ok,Dirs} = erl_prim_loader:list_dir(LibDir), -- Paths = make_path(LibDir, Dirs), -+ F = fun(R) -> -+ LD = filename:append(R, "lib"), -+ case erl_prim_loader:list_dir(LD) of -+ error -> []; -+ {ok, D} -> make_path(LD, D) -+ end -+ end, -+ Paths = F(Root), -+ SharedPaths = F("/usr/share/erlang"), - UserLibPaths = get_user_lib_dirs(), -- ["."] ++ UserLibPaths ++ Paths; -+ ["."] ++ UserLibPaths ++ Paths ++ SharedPaths; - _ -> - [] - end, diff --git a/otp-0006-Do-not-install-erlang-sources.patch b/otp-0006-Do-not-install-erlang-sources.patch new file mode 100644 index 0000000..7362a97 --- /dev/null +++ b/otp-0006-Do-not-install-erlang-sources.patch @@ -0,0 +1,996 @@ +From: Hans Ulrich Niedermann +Date: Mon, 21 Mar 2011 15:41:49 +0100 +Subject: [PATCH] Do not install erlang sources + +Don't install *.erl, *.xrl, *.yrl, and *.asn1 files at all. + +Signed-off-by: Peter Lemenkov +Signed-off-by: Hans Ulrich Niedermann + +diff --git a/erts/preloaded/src/Makefile b/erts/preloaded/src/Makefile +index 52034a0881..56d91b928b 100644 +--- a/erts/preloaded/src/Makefile ++++ b/erts/preloaded/src/Makefile +@@ -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) +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(BEAM_FILES) $(STUBS_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(STATIC_TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin" + +diff --git a/lib/asn1/src/Makefile b/lib/asn1/src/Makefile +index 5b34017e9b..d4677d6b80 100644 +--- a/lib/asn1/src/Makefile ++++ b/lib/asn1/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(APP_SRC) $(APPUP_SRC) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/examples" + $(INSTALL_DATA) $(EXAMPLES) "$(RELSYSDIR)/examples" + +diff --git a/lib/common_test/src/Makefile b/lib/common_test/src/Makefile +index 987345c679..f53546a9ec 100644 +--- a/lib/common_test/src/Makefile ++++ b/lib/common_test/src/Makefile +@@ -144,7 +144,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/include" +diff --git a/lib/compiler/src/Makefile b/lib/compiler/src/Makefile +index 299b2892fc..36a048bc85 100644 +--- a/lib/compiler/src/Makefile ++++ b/lib/compiler/src/Makefile +@@ -172,8 +172,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(EXTRA_FILES) \ +- $(YRL_FILE) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) $(EXTRA_FILES) \ ++ "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/cosEvent/src/Makefile b/lib/cosEvent/src/Makefile +index b79f0ec1e5..30d1a1d3d9 100644 +--- a/lib/cosEvent/src/Makefile ++++ b/lib/cosEvent/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(GEN_ERL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/cosEventDomain/src/Makefile b/lib/cosEventDomain/src/Makefile +index da8dcf08b6..88b3993786 100644 +--- a/lib/cosEventDomain/src/Makefile ++++ b/lib/cosEventDomain/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(GEN_ERL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(EXTERNAL_GEN_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/cosFileTransfer/src/Makefile b/lib/cosFileTransfer/src/Makefile +index f9107ff48f..74d337d5f4 100644 +--- a/lib/cosFileTransfer/src/Makefile ++++ b/lib/cosFileTransfer/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(GEN_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(GEN_ERL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) $(GEN_HRL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" +- $(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include" + + release_docs_spec: +diff --git a/lib/cosNotification/src/Makefile b/lib/cosNotification/src/Makefile +index 72b063fd1c..0fdb82ea33 100644 +--- a/lib/cosNotification/src/Makefile ++++ b/lib/cosNotification/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(GEN_FILES) $(IDL_FILES) $(YECC_FILES) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(IDL_FILES) $(YECC_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(GEN_HRL_FILES) $(HRL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/cosProperty/src/Makefile b/lib/cosProperty/src/Makefile +index cd559e168f..bdf035e795 100644 +--- a/lib/cosProperty/src/Makefile ++++ b/lib/cosProperty/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(GEN_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(GEN_ERL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(GEN_HRL_FILES) $(HRL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/cosTime/src/Makefile b/lib/cosTime/src/Makefile +index 7a14db6974..4b5539851f 100644 +--- a/lib/cosTime/src/Makefile ++++ b/lib/cosTime/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(GEN_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(GEN_ERL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(GEN_HRL_FILES) $(HRL_FILES) $(IDL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(GEN_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/cosTransactions/src/Makefile b/lib/cosTransactions/src/Makefile +index 90e1e5130f..05826e0fab 100644 +--- a/lib/cosTransactions/src/Makefile ++++ b/lib/cosTransactions/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(GEN_ERL_FILES) $(IDL_FILE) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) $(IDL_FILE) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(EXTERNAL_GEN_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/crypto/src/Makefile b/lib/crypto/src/Makefile +index 6e4008e434..c2d00fc7f5 100644 +--- a/lib/crypto/src/Makefile ++++ b/lib/crypto/src/Makefile +@@ -82,8 +82,6 @@ docs: + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) \ + $(APPUP_TARGET) "$(RELSYSDIR)/ebin" +diff --git a/lib/debugger/src/Makefile b/lib/debugger/src/Makefile +index f115f49d98..e7dc360a44 100644 +--- a/lib/debugger/src/Makefile ++++ b/lib/debugger/src/Makefile +@@ -117,7 +117,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) $(TOOLBOX_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(TOOLBOX_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(TARGET_TOOLBOX_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/dialyzer/src/Makefile b/lib/dialyzer/src/Makefile +index 770af2140f..4f8a6d8f3a 100644 +--- a/lib/dialyzer/src/Makefile ++++ b/lib/dialyzer/src/Makefile +@@ -152,7 +152,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(EXTRA_FILES) \ ++ $(INSTALL_DATA) $(HRL_FILES) $(EXTRA_FILES) \ + "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin" +diff --git a/lib/diameter/src/Makefile b/lib/diameter/src/Makefile +index e0bbbdfe63..10771b2b4a 100644 +--- a/lib/diameter/src/Makefile ++++ b/lib/diameter/src/Makefile +@@ -251,11 +251,8 @@ release_spec: opt + $(MAKE) $(EXAMPLE_DIRS:%/=release_examples_%) + + $(TARGET_DIRS:%/=release_src_%): release_src_%: +- $(INSTALL_DIR) "$(RELSYSDIR)/src/$*" +- $(INSTALL_DATA) $(filter $*/%, $(TARGET_MODULES:%=%.erl) \ +- $(INTERNAL_HRLS)) \ +- $(filter $*/%, compiler/$(DICT_YRL).yrl) \ +- "$(RELSYSDIR)/src/$*" ++ $(INSTALL_DATA) $(filter $*/%, $(INTERNAL_HRLS)) \ ++ "$(RELSYSDIR)/src/$*" || true + + $(EXAMPLE_DIRS:%/=release_examples_%): release_examples_%: + $(INSTALL_DIR) "$(RELSYSDIR)/examples/$*" +diff --git a/lib/edoc/src/Makefile b/lib/edoc/src/Makefile +index 4e5a4182da..c0bb0c32ec 100644 +--- a/lib/edoc/src/Makefile ++++ b/lib/edoc/src/Makefile +@@ -88,7 +88,7 @@ release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(OBJECTS) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(SOURCES) $(HRL_FILES) $(YRL_FILE) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + + release_docs_spec: + +diff --git a/lib/eldap/src/Makefile b/lib/eldap/src/Makefile +index cd3c102f55..b55c513e90 100644 +--- a/lib/eldap/src/Makefile ++++ b/lib/eldap/src/Makefile +@@ -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" +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" +- $(INSTALL_DIR) "$(RELSYSDIR)/asn1" +- $(INSTALL_DATA) ../asn1/$(ASN1_FILES) "$(RELSYSDIR)/asn1" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/erl_docgen/src/Makefile b/lib/erl_docgen/src/Makefile +index 7d41506dbd..3f3562fce1 100644 +--- a/lib/erl_docgen/src/Makefile ++++ b/lib/erl_docgen/src/Makefile +@@ -90,8 +90,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/et/src/Makefile b/lib/et/src/Makefile +index 461a52d480..1f2e885d3f 100644 +--- a/lib/et/src/Makefile ++++ b/lib/et/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" +diff --git a/lib/eunit/src/Makefile b/lib/eunit/src/Makefile +index 86a6d8831e..5732fd85f3 100644 +--- a/lib/eunit/src/Makefile ++++ b/lib/eunit/src/Makefile +@@ -120,7 +120,6 @@ release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(PARSE_TRANSFORM_BIN) $(OBJECTS) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(PARSE_TRANSFORM) $(SOURCES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include" +diff --git a/lib/gs/src/Makefile b/lib/gs/src/Makefile +index ff3080e20e..60337dd00d 100644 +--- a/lib/gs/src/Makefile ++++ b/lib/gs/src/Makefile +@@ -109,8 +109,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(APP_SRC) $(ERL_FILES) $(HRL_FILES) $(GEN_HRL_FILES) \ +- $(GSTK_GENERIC) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) $(GEN_HRL_FILES) \ ++ "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/priv/bitmap" +diff --git a/lib/hipe/cerl/Makefile b/lib/hipe/cerl/Makefile +index 0938010577..134ed7b602 100644 +--- a/lib/hipe/cerl/Makefile ++++ b/lib/hipe/cerl/Makefile +@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/cerl" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/cerl" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/cerl" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/hipe/flow/Makefile b/lib/hipe/flow/Makefile +index f0af6ac166..16b512e19a 100644 +--- a/lib/hipe/flow/Makefile ++++ b/lib/hipe/flow/Makefile +@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/flow" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(INC_FILES) "$(RELSYSDIR)/flow" ++ $(INSTALL_DATA) $(HRL_FILES) $(INC_FILES) "$(RELSYSDIR)/flow" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/hipe/icode/Makefile b/lib/hipe/icode/Makefile +index a82e28c7d9..f364a53ca2 100644 +--- a/lib/hipe/icode/Makefile ++++ b/lib/hipe/icode/Makefile +@@ -120,7 +120,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/icode" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/icode" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/icode" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/hipe/llvm/Makefile b/lib/hipe/llvm/Makefile +index f6f6f6be1c..436992310e 100644 +--- a/lib/hipe/llvm/Makefile ++++ b/lib/hipe/llvm/Makefile +@@ -103,7 +103,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) $(RELSYSDIR)/llvm +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(RELSYSDIR)/llvm ++ $(INSTALL_DATA) $(HRL_FILES) $(RELSYSDIR)/llvm + $(INSTALL_DIR) $(RELSYSDIR)/ebin + $(INSTALL_DATA) $(TARGET_FILES) $(RELSYSDIR)/ebin + +diff --git a/lib/hipe/main/Makefile b/lib/hipe/main/Makefile +index d44be2d9fa..ed81f103a8 100644 +--- a/lib/hipe/main/Makefile ++++ b/lib/hipe/main/Makefile +@@ -118,7 +118,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DATA) ../vsn.mk "$(RELSYSDIR)" + $(INSTALL_DIR) "$(RELSYSDIR)/main" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/main" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/main" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/hipe/misc/Makefile b/lib/hipe/misc/Makefile +index be5c9bc2b6..d40b322461 100644 +--- a/lib/hipe/misc/Makefile ++++ b/lib/hipe/misc/Makefile +@@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/misc" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/misc" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/misc" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/hipe/rtl/Makefile b/lib/hipe/rtl/Makefile +index 1bf52fe312..5049beca5d 100644 +--- a/lib/hipe/rtl/Makefile ++++ b/lib/hipe/rtl/Makefile +@@ -105,7 +105,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/rtl" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/rtl" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/rtl" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/hipe/util/Makefile b/lib/hipe/util/Makefile +index 4a78ad7a1b..1b1ce05cc5 100644 +--- a/lib/hipe/util/Makefile ++++ b/lib/hipe/util/Makefile +@@ -50,7 +50,6 @@ HIPE_MODULES = + endif + MODULES = hipe_timing hipe_dot hipe_digraph $(HIPE_MODULES) + +-HRL_FILES= + ERL_FILES= $(MODULES:%=%.erl) + TARGET_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR)) + DOC_FILES= $(MODULES:%=$(DOCS)/%.html) +@@ -104,8 +103,6 @@ $(DOCS)/%.html:%.erl + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/util" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/util" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/ic/src/Makefile b/lib/ic/src/Makefile +index a6da81a03b..60870be1ca 100644 +--- a/lib/ic/src/Makefile ++++ b/lib/ic/src/Makefile +@@ -200,7 +200,7 @@ release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(YRL_FILE) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/examples" + $(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 f8daa2b894..48e5d490c6 100644 +--- a/lib/inets/src/ftp/Makefile ++++ b/lib/inets/src/ftp/Makefile +@@ -91,7 +91,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/ftp" +- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src/ftp" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/ftp" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/inets/src/http_client/Makefile b/lib/inets/src/http_client/Makefile +index cb97b525f6..cb13dfbb4e 100644 +--- a/lib/inets/src/http_client/Makefile ++++ b/lib/inets/src/http_client/Makefile +@@ -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" +- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src/http_client" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/http_client" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/inets/src/http_lib/Makefile b/lib/inets/src/http_lib/Makefile +index 4a4eef9f24..c779c8ef16 100644 +--- a/lib/inets/src/http_lib/Makefile ++++ b/lib/inets/src/http_lib/Makefile +@@ -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" +- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src/http_lib" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/http_lib" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/inets/src/http_server/Makefile b/lib/inets/src/http_server/Makefile +index 1c05d454a5..88f9f62d3b 100644 +--- a/lib/inets/src/http_server/Makefile ++++ b/lib/inets/src/http_server/Makefile +@@ -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) $(BEHAVIOUR_TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/inets/src/inets_app/Makefile b/lib/inets/src/inets_app/Makefile +index 7f51676dc5..093f4622aa 100644 +--- a/lib/inets/src/inets_app/Makefile ++++ b/lib/inets/src/inets_app/Makefile +@@ -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" +- $(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src/inets_app" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/inets_app" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(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 d5d94e1b78..5583064658 100644 +--- a/lib/inets/src/tftp/Makefile ++++ b/lib/inets/src/tftp/Makefile +@@ -96,7 +96,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/tftp" +- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src/tftp" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/tftp" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(BEHAVIOUR_TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/kernel/src/Makefile b/lib/kernel/src/Makefile +index 57dacebde3..1cebd801be 100644 +--- a/lib/kernel/src/Makefile ++++ b/lib/kernel/src/Makefile +@@ -200,7 +200,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(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 8f8e6ecded..9e0bc82329 100644 +--- a/lib/megaco/src/app/Makefile ++++ b/lib/megaco/src/app/Makefile +@@ -114,7 +114,7 @@ release_spec: opt + $(INSTALL_DATA) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/app" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/app" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/app" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include" + +diff --git a/lib/megaco/src/binary/Makefile b/lib/megaco/src/binary/Makefile +index 711fbb7665..1db4593c6e 100644 +--- a/lib/megaco/src/binary/Makefile ++++ b/lib/megaco/src/binary/Makefile +@@ -176,7 +176,7 @@ release_spec: opt + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/binary" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(ASN1_FILES) "$(RELSYSDIR)/src/binary" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/binary" + + + release_docs_spec: +diff --git a/lib/megaco/src/engine/Makefile b/lib/megaco/src/engine/Makefile +index 208942c3be..d5b721854d 100644 +--- a/lib/megaco/src/engine/Makefile ++++ b/lib/megaco/src/engine/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/engine" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/engine" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + + +diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in +index 39be02ad5e..8c6ba31cee 100644 +--- a/lib/megaco/src/flex/Makefile.in ++++ b/lib/megaco/src/flex/Makefile.in +@@ -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" + ifeq ($(ENABLE_MEGACO_FLEX_SCANNER),true) + $(INSTALL_DATA) $(FLEX_FILES) "$(RELSYSDIR)/src/flex" +diff --git a/lib/megaco/src/tcp/Makefile b/lib/megaco/src/tcp/Makefile +index 0c546a881f..78f659a2e8 100644 +--- a/lib/megaco/src/tcp/Makefile ++++ b/lib/megaco/src/tcp/Makefile +@@ -94,7 +94,7 @@ release_spec: opt + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/tcp" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/tcp" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/tcp" + + + release_docs_spec: +diff --git a/lib/megaco/src/text/Makefile b/lib/megaco/src/text/Makefile +index f4fc56a27d..1cc73fd7c3 100644 +--- a/lib/megaco/src/text/Makefile ++++ b/lib/megaco/src/text/Makefile +@@ -135,7 +135,7 @@ release_spec: opt + $(INSTALL_DATA) $(BEAM_TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/text" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_YRL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/text" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/text" + + + release_docs_spec: +diff --git a/lib/megaco/src/udp/Makefile b/lib/megaco/src/udp/Makefile +index 7288c205f0..aefd9f3cfc 100644 +--- a/lib/megaco/src/udp/Makefile ++++ b/lib/megaco/src/udp/Makefile +@@ -94,7 +94,7 @@ release_spec: opt + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/udp" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/udp" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/udp" + + + release_docs_spec: +diff --git a/lib/mnesia/src/Makefile b/lib/mnesia/src/Makefile +index dae0df76f3..6294ae92ce 100644 +--- a/lib/mnesia/src/Makefile ++++ b/lib/mnesia/src/Makefile +@@ -133,7 +133,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/observer/src/Makefile b/lib/observer/src/Makefile +index 2d42510b47..7579014d35 100644 +--- a/lib/observer/src/Makefile ++++ b/lib/observer/src/Makefile +@@ -152,7 +152,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/examples" + $(INSTALL_DATA) $(EXAMPLE_FILES) "$(RELSYSDIR)/examples" +diff --git a/lib/odbc/src/Makefile b/lib/odbc/src/Makefile +index 51c9ed3d5c..50a4c1088c 100644 +--- a/lib/odbc/src/Makefile ++++ b/lib/odbc/src/Makefile +@@ -110,7 +110,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(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 0eca8ddfab..18d9627c8c 100644 +--- a/lib/orber/COSS/CosNaming/Makefile ++++ b/lib/orber/COSS/CosNaming/Makefile +@@ -145,8 +145,8 @@ release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/COSS/CosNaming" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(IDL_FILE) "$(RELSYSDIR)/COSS/CosNaming" +- $(INSTALL_DATA) $(GEN_FILES) "$(RELSYSDIR)/COSS/CosNaming" ++ $(INSTALL_DATA) $(HRL_FILES) $(IDL_FILE) "$(RELSYSDIR)/COSS/CosNaming" ++ $(INSTALL_DATA) $(GEN_HRL_FILES) $(GEN_EXT_HRL_FILES) "$(RELSYSDIR)/COSS/CosNaming" + + + release_docs_spec: +diff --git a/lib/orber/src/Makefile b/lib/orber/src/Makefile +index 30b74c490a..9c6708fdd3 100644 +--- a/lib/orber/src/Makefile ++++ b/lib/orber/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(ERL_FILES) $(YRL_FILE) $(GEN_HRL_FILES_LOC) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(GEN_HRL_FILES_LOC) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(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 1003d24be9..1b1215456e 100644 +--- a/lib/os_mon/src/Makefile ++++ b/lib/os_mon/src/Makefile +@@ -105,7 +105,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" +diff --git a/lib/ose/src/Makefile b/lib/ose/src/Makefile +index a89e9392e9..224d944d71 100644 +--- a/lib/ose/src/Makefile ++++ b/lib/ose/src/Makefile +@@ -94,9 +94,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" +- $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/otp_mibs/src/Makefile b/lib/otp_mibs/src/Makefile +index 03892cd43d..c3ad326faf 100644 +--- a/lib/otp_mibs/src/Makefile ++++ b/lib/otp_mibs/src/Makefile +@@ -96,8 +96,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGETS) "$(RELSYSDIR)/ebin" + +diff --git a/lib/parsetools/src/Makefile b/lib/parsetools/src/Makefile +index dbecdd24a5..1d45801b95 100644 +--- a/lib/parsetools/src/Makefile ++++ b/lib/parsetools/src/Makefile +@@ -91,8 +91,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/include" +diff --git a/lib/percept/src/Makefile b/lib/percept/src/Makefile +index 9b963e0fae..deeb75c132 100644 +--- a/lib/percept/src/Makefile ++++ b/lib/percept/src/Makefile +@@ -97,7 +97,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + # $(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 7474297b9b..a51065850b 100644 +--- a/lib/public_key/asn1/Makefile ++++ b/lib/public_key/asn1/Makefile +@@ -96,8 +96,8 @@ release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" + $(INSTALL_DIR) "$(RELSYSDIR)/asn1" +- $(INSTALL_DATA) $(ASN_ASNS) $(ASN_ERLS) $(ASN_HRLS) $(ASN_CONFIGS) \ +- $(GEN_ERLS) "$(RELSYSDIR)/asn1" ++ $(INSTALL_DATA) $(ASN_ASNS) $(ASN_HRLS) $(ASN_CONFIGS) \ ++ "$(RELSYSDIR)/asn1" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/public_key/src/Makefile b/lib/public_key/src/Makefile +index 786f244f85..0463c678f6 100644 +--- a/lib/public_key/src/Makefile ++++ b/lib/public_key/src/Makefile +@@ -109,8 +109,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" +diff --git a/lib/reltool/src/Makefile b/lib/reltool/src/Makefile +index 1fea41550c..a756470503 100644 +--- a/lib/reltool/src/Makefile ++++ b/lib/reltool/src/Makefile +@@ -100,7 +100,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 99b90f9ec5..25b3ebb671 100644 +--- a/lib/runtime_tools/src/Makefile ++++ b/lib/runtime_tools/src/Makefile +@@ -97,8 +97,6 @@ docs: + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" + $(INSTALL_DIR) "$(RELSYSDIR)/examples" +diff --git a/lib/sasl/src/Makefile b/lib/sasl/src/Makefile +index 7ff6a03a50..a304900917 100644 +--- a/lib/sasl/src/Makefile ++++ b/lib/sasl/src/Makefile +@@ -93,7 +93,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(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 89037b3ea8..01de885f0d 100644 +--- a/lib/snmp/src/agent/Makefile ++++ b/lib/snmp/src/agent/Makefile +@@ -131,7 +131,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/agent" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src/agent" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/agent" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 7972d9549d..78a9f2b6ec 100644 +--- a/lib/snmp/src/app/Makefile ++++ b/lib/snmp/src/app/Makefile +@@ -132,7 +132,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/app" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src/app" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/app" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 54f2e229b9..488faa4727 100644 +--- a/lib/snmp/src/compile/Makefile ++++ b/lib/snmp/src/compile/Makefile +@@ -123,7 +123,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/compiler" +- $(INSTALL_DATA) $(ESCRIPT_SRC) $(PARSER_SRC) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/compiler" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src/compiler" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 382f83b78e..db50c264ad 100644 +--- a/lib/snmp/src/manager/Makefile ++++ b/lib/snmp/src/manager/Makefile +@@ -114,7 +114,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/manager" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src/manager" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/manager" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 c71ecf994e..d17e699be0 100644 +--- a/lib/snmp/src/misc/Makefile ++++ b/lib/snmp/src/misc/Makefile +@@ -112,7 +112,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/misc" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src/misc" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src/misc" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + # $(INSTALL_DIR) "$(RELSYSDIR)/include" +diff --git a/lib/ssh/src/Makefile b/lib/ssh/src/Makefile +index b44c8eef35..8f8b58dcd7 100644 +--- a/lib/ssh/src/Makefile ++++ b/lib/ssh/src/Makefile +@@ -135,7 +135,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 7a7a373487..419fa9e090 100644 +--- a/lib/ssl/src/Makefile ++++ b/lib/ssl/src/Makefile +@@ -142,7 +142,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(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 9f4a446ea0..50ac11ec80 100644 +--- a/lib/stdlib/src/Makefile ++++ b/lib/stdlib/src/Makefile +@@ -207,7 +207,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) erl_parse.yrl "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(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 2e91adf8af..0085fca025 100644 +--- a/lib/syntax_tools/src/Makefile ++++ b/lib/syntax_tools/src/Makefile +@@ -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" + $(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 6a26ee2933..73364773db 100644 +--- a/lib/test_server/src/Makefile ++++ b/lib/test_server/src/Makefile +@@ -124,7 +124,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DATA) $(INTERNAL_HRL_FILES) $(TS_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" +diff --git a/lib/tools/src/Makefile b/lib/tools/src/Makefile +index 9fcfb79628..b30b173e87 100644 +--- a/lib/tools/src/Makefile ++++ b/lib/tools/src/Makefile +@@ -107,7 +107,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(YRL_FILE) $(HRL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \ + "$(RELSYSDIR)/ebin" +diff --git a/lib/typer/src/Makefile b/lib/typer/src/Makefile +index 620ca21827..9c9390e103 100644 +--- a/lib/typer/src/Makefile ++++ b/lib/typer/src/Makefile +@@ -102,9 +102,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) $(YRL_FILES) \ +- "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin" + +diff --git a/lib/webtool/src/Makefile b/lib/webtool/src/Makefile +index a5a8eaf5dc..be80ba74aa 100644 +--- a/lib/webtool/src/Makefile ++++ b/lib/webtool/src/Makefile +@@ -88,8 +88,6 @@ $(APPUP_TARGET): $(APPUP_SRC) ../vsn.mk + include $(ERL_TOP)/make/otp_release_targets.mk + + release_spec: opt +- $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \ + "$(RELSYSDIR)/ebin" +diff --git a/lib/wx/src/Makefile b/lib/wx/src/Makefile +index b345e34684..153a2707ad 100644 +--- a/lib/wx/src/Makefile ++++ b/lib/wx/src/Makefile +@@ -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" +- $(INSTALL_DATA) $(HRL_FILES) $(ERL_FILES) "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/src/gen" +- $(INSTALL_DATA) $(GEN_HRL) $(GEN_FILES) "$(RELSYSDIR)/src/gen" ++ $(INSTALL_DATA) $(GEN_HRL) "$(RELSYSDIR)/src/gen" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(EXT_HRL) "$(RELSYSDIR)/include" + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" +diff --git a/lib/xmerl/src/Makefile b/lib/xmerl/src/Makefile +index f8f0320f46..099513e380 100644 +--- a/lib/xmerl/src/Makefile ++++ b/lib/xmerl/src/Makefile +@@ -218,9 +218,7 @@ release_spec: opt + $(INSTALL_DIR) "$(RELSYSDIR)/ebin" + $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" + $(INSTALL_DIR) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) $(ERL_FILES) $(INTERNAL_HRL_FILES) $(APP_SRC) $(APPUP_SRC) "$(RELSYSDIR)/src" +- $(INSTALL_DATA) xmerl_xpath_parse.yrl "$(RELSYSDIR)/src" +- $(INSTALL_DATA) xmerl_b64Bin.yrl "$(RELSYSDIR)/src" ++ $(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src" + $(INSTALL_DIR) "$(RELSYSDIR)/include" + $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" + diff --git a/otp-0007-Avoid-forking-sed-to-get-basename.patch b/otp-0007-Avoid-forking-sed-to-get-basename.patch deleted file mode 100644 index d146ab2..0000000 --- a/otp-0007-Avoid-forking-sed-to-get-basename.patch +++ /dev/null @@ -1,31 +0,0 @@ -From: Jan Pazdziora -Date: Thu, 10 May 2018 18:35:02 +0200 -Subject: [PATCH] Avoid forking sed to get basename. - - -diff --git a/erts/etc/unix/erl.src.src b/erts/etc/unix/erl.src.src -index 536fa139d9..4dcffbc4c8 100644 ---- a/erts/etc/unix/erl.src.src -+++ b/erts/etc/unix/erl.src.src -@@ -49,7 +49,7 @@ else - fi - BINDIR="$ROOTDIR/erts-%VSN%/bin" - EMU=%EMULATOR%%EMULATOR_NUMBER% --PROGNAME=`basename "$0"` -+PROGNAME=${0##*/} - export EMU - export ROOTDIR - export BINDIR -diff --git a/erts/etc/unix/start_erl.src b/erts/etc/unix/start_erl.src -index 34e0369710..62e613bba1 100644 ---- a/erts/etc/unix/start_erl.src -+++ b/erts/etc/unix/start_erl.src -@@ -37,7 +37,7 @@ VSN=`awk '{print $2}' $DataFile` - - BINDIR=$ROOTDIR/erts-$ERTS_VSN/bin - EMU=beam --PROGNAME=`echo $0 | sed 's/.*\///'` -+PROGNAME=${0##*/} - export EMU - export ROOTDIR - export BINDIR diff --git a/otp-0007-Split-off-webtool-dependency-from-tools.patch b/otp-0007-Split-off-webtool-dependency-from-tools.patch new file mode 100644 index 0000000..8c8188e --- /dev/null +++ b/otp-0007-Split-off-webtool-dependency-from-tools.patch @@ -0,0 +1,40 @@ +From: Peter Lemenkov +Date: Sat, 8 Nov 2014 22:54:57 +0300 +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 ae8b3f25cf..539ca96b8e 100644 +--- a/lib/tools/src/cover_web.erl ++++ b/lib/tools/src/cover_web.erl +@@ -51,14 +51,25 @@ + %%%---------------------------------------------------------------------- + %% Start webtool and webcover from erlang shell + start() -> +- webtool:start(), +- webtool:start_tools([],"app=webcover"), ++ try ++ % Disable automatic dependency picking up ++ erlang:apply(webtool, start, []), ++ erlang:apply(webtool, start_tools, [[],"app=webcover"]) ++ catch ++ error:undef -> error_logger:error_msg("No erlang-webtool found.~nPlease install erlang-webtool package first.~n") ++ end, + ok. + + %% Stop webtool and webcover from erlang shell + stop() -> +- webtool:stop_tools([],"app=webcover"), +- webtool:stop(). ++ try ++ % Disable automatic dependency picking up ++ erlang:apply(webtool, stop_tools, [[],"app=webcover"]), ++ erlang:apply(webtool, stop, []) ++ catch ++ error:undef -> error_logger:error_msg("No erlang-webtool found.~nPlease install erlang-webtool package first.~n") ++ end, ++ ok. + + + 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..efb3a4f --- /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 787241b960..069d80ac4b 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) +- erts_exit(ERTS_ABORT_EXIT, ++ erts_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) +- erts_exit(ERTS_ABORT_EXIT, ++ erts_exit(ERTS_DUMP_EXIT, + "Absurdly large distribution output data buffer " + "(%beu bytes) passed.\n", + size); diff --git a/otp-0008-Load-man-pages-from-system-wide-directory.patch b/otp-0008-Load-man-pages-from-system-wide-directory.patch deleted file mode 100644 index e014671..0000000 --- a/otp-0008-Load-man-pages-from-system-wide-directory.patch +++ /dev/null @@ -1,25 +0,0 @@ -From: Francois-Denis Gonthier -Date: Thu, 20 Sep 2018 15:01:18 +0300 -Subject: [PATCH] Load man-pages from system-wide directory - -Patch allows one to use standard man path with erl -man command. -(Erlang manual pages are placed to /usr/share/man/ hierarchy -as required by Debian policy.) - -diff --git a/erts/etc/common/erlexec.c b/erts/etc/common/erlexec.c -index 888df87e35..14272f06c6 100644 ---- a/erts/etc/common/erlexec.c -+++ b/erts/etc/common/erlexec.c -@@ -716,8 +716,10 @@ int main(int argc, char **argv) - error("-man not supported on Windows"); - #else - argv[i] = "man"; -- erts_snprintf(tmpStr, sizeof(tmpStr), "%s/man", rootdir); -- set_env("MANPATH", tmpStr); -+ /* -+ * Conform to erlang-manpages content. -+ */ -+ putenv(strsave("MANSECT=3erl:1:5:7")); - execvp("man", argv+i); - error("Could not execute the 'man' command."); - #endif diff --git a/otp-0009-Add-GDB-tools.patch b/otp-0009-Add-GDB-tools.patch deleted file mode 100644 index 462324e..0000000 --- a/otp-0009-Add-GDB-tools.patch +++ /dev/null @@ -1,464 +0,0 @@ -From: Peter Lemenkov -Date: Thu, 19 Jun 2025 13:17:52 +0200 -Subject: [PATCH] Add GDB tools - -* https://github.com/erlang/otp-gdb-tools -* Commit 7b864f58c534699e4124e31ecfda86041b941037. - -Signed-off-by: Peter Lemenkov - -diff --git a/erts/etc/unix/gdb-tools/README.md b/erts/etc/unix/gdb-tools/README.md -new file mode 100644 -index 0000000000..8a6cf92b1d ---- /dev/null -+++ b/erts/etc/unix/gdb-tools/README.md -@@ -0,0 +1,42 @@ -+# Erlang/OTP GDB Tools -+ -+This repository contains GDB tools that cannot -+be part of the main Erlang/OTP repository for licensing -+reasons. The tools are used when building and debugging -+Erlang/OTP with gdb and are installed as needed by the -+Erlang/OTP build system. -+ -+Right now the only tool in this repository is the jit-reader -+which is a plugin to gdb that allows it to read the stack of -+Erlang processes when using the JIT. This allows commands -+such as `backtrace` to show Erlang stackframes. For example: -+ -+``` -+(gdb) bt -+#0 0x00007fffa40005ee in global::call_bif_shared () -+#1 0x00007fffa411eaac in erl_eval:eval_lc1/7 () at erl_eval.erl:929 -+#2 0x00007fffa411e7bc in erl_eval:eval_lc/7 () at erl_eval.erl:917 -+#3 0x00007fffa4296528 in lists:map_1/2 () at lists.erl:2082 -+#4 0x00007fffa4296554 in lists:map_1/2 () at lists.erl:2082 -+#5 0x00007fffa4296554 in lists:map_1/2 () at lists.erl:2082 -+#6 0x00007fffa4296554 in lists:map_1/2 () at lists.erl:2082 -+..... -+#98 0x00007fffa4296554 in lists:map_1/2 () at lists.erl:2082 -+#99 0x00007fffa4296554 in lists:map_1/2 () at lists.erl:2082 -+#100 0x00007fffa4296554 in lists:map_1/2 () at lists.erl:2082 -+#101 0x00007fffa42963d4 in lists:map/2 () at lists.erl:2077 -+#102 0x00007fffa411e45c in erl_eval:do_apply/7 () at erl_eval.erl:904 -+#103 0x00007fffa45f4c58 in shell:exprs/7 () at shell.erl:893 -+#104 0x00007fffa45f42c4 in shell:eval_exprs/7 () at shell.erl:849 -+#105 0x00007fffa45f3dac in shell:eval_loop/4 () at shell.erl:834 -+#106 0x00007fffa40024b8 in erts_beamasm:normal_exit/0-CodeInfoPrologue () -+Backtrace stopped: previous frame inner to this frame (corrupt stack?) -+(gdb) -+``` -+ -+## Updates of jit-reader -+ -+When updating jit-reader you first need to update this repository -+and push the new version here. Then you need to run -+`./otp_build update_gdb_tools` in the Erlang/OTP repo for -+it to use the correct commit. -diff --git a/erts/etc/unix/gdb-tools/jit-reader.c b/erts/etc/unix/gdb-tools/jit-reader.c -new file mode 100644 -index 0000000000..3c39c5540d ---- /dev/null -+++ b/erts/etc/unix/gdb-tools/jit-reader.c -@@ -0,0 +1,386 @@ -+#include -+ -+#include -+#include -+#include -+#include -+ -+/* Useful links -+ * - https://pwparchive.wordpress.com/2011/11/20/new-jit-interface-for-gdb/ -+ * - https://sourceware.org/gdb/current/onlinedocs/gdb/Custom-Debug-Info.html -+ * - https://github.com/tetzank/asmjit-utilities -+ * - https://github.com/bminor/binutils-gdb/blob/master/gdb/testsuite/gdb.base/jitreader.c -+ */ -+ -+GDB_DECLARE_GPL_COMPATIBLE_READER -+ -+#if 0 -+#define HARD_DEBUG -+static FILE *log = NULL; -+#define LOG(...) do { fprintf(log, ##__VA_ARGS__); fflush(log); } while(0) -+#else -+#define LOG(...) -+#endif -+ -+typedef enum { -+ X64_RBP = 6, /* Frame pointer iff native frames are enabled */ -+ X64_RSP = 7, /* Stack pointer when using native stack */ -+ X64_R12 = 12, /* Stack pointer when using non-native stack */ -+ X64_R13 = 13, /* Current process */ -+ X64_RIP = 16 -+} X64Register; -+ -+typedef enum { -+ /* Return address only */ -+ ERTS_FRAME_LAYOUT_RA, -+ /* Frame pointer, return address */ -+ ERTS_FRAME_LAYOUT_FP_RA -+} ErtsFrameLayout; -+ -+struct emulator_info { -+ /* 0 = regular, 1 = frame pointers */ -+ int frame_layout; -+ const void *normal_exit; -+}; -+ -+struct erlang_module_info { -+ uint64_t base_address; -+ uint32_t range_count; -+ uint32_t code_size; -+ /* Module name, including null terminator. */ -+ uint16_t name_length; -+ char name[]; -+ /* array of range_info structures */ -+}; -+ -+struct range_info { -+ uint32_t start_offset; -+ uint32_t end_offset; -+ uint32_t line_count; -+ /* Range name, including null terminator. */ -+ uint16_t name_length; -+ char name[]; -+ /* array of line_info structures */ -+}; -+ -+struct line_info { -+ uint32_t start_offset; -+ uint32_t line_number; -+ /* File name, including null terminator. */ -+ uint16_t file_length; -+ char file[]; -+}; -+ -+enum debug_info_header { -+ DEBUG_INFO_HEADER_EMULATOR = 0, -+ DEBUG_INFO_HEADER_MODULE = 1, -+}; -+ -+struct debug_info { -+ enum debug_info_header header; -+ union { -+ struct emulator_info emu; -+ struct erlang_module_info mod; -+ } payload; -+}; -+ -+typedef struct range { -+ GDB_CORE_ADDR start; -+ GDB_CORE_ADDR end; -+#ifdef HARD_DEBUG -+ char *name; -+#endif -+} range; -+ -+typedef struct priv { -+ range *ranges; -+ int num_ranges; -+ ErtsFrameLayout frame_layout; -+ const void *normal_exit; -+} priv; -+ -+static enum gdb_status read_module_info(struct gdb_reader_funcs *self, -+ struct gdb_symbol_callbacks *cb, -+ struct erlang_module_info *module_info) { -+ struct gdb_object *obj = cb->object_open(cb); -+ GDB_CORE_ADDR mod_start, mod_end; -+ char *symfile = (char*)module_info; -+ priv *priv = self->priv_data; -+ -+ symfile += sizeof(*module_info) + module_info->name_length; -+ -+ mod_start = module_info->base_address; -+ mod_end = mod_start + module_info->code_size; -+ -+ priv->ranges = realloc(priv->ranges, (priv->num_ranges + 1) * sizeof(range)); -+ priv->ranges[priv->num_ranges].start = mod_start; -+ priv->ranges[priv->num_ranges].end = mod_end; -+#ifdef HARD_DEBUG -+ priv->ranges[priv->num_ranges].name = strdup(module_info->name); -+#endif -+ priv->num_ranges += 1; -+ -+ LOG("Add module `%s` (0x%lx, 0x%lx)\r\n", -+ module_info->name, mod_start, mod_end); -+ -+ for (int range = 0; range < module_info->range_count; range++) { -+ struct range_info *range_info; -+ struct gdb_symtab *symtab; -+ GDB_CORE_ADDR begin, end; -+ -+ range_info = (struct range_info *)symfile; -+ symfile += sizeof(*range_info) + range_info->name_length; -+ -+ begin = mod_start + range_info->start_offset; -+ end = mod_start + range_info->end_offset; -+ -+ LOG("Add range `%s` (0x%lx, 0x%lx), %u lines\r\n", -+ range_info->name, -+ begin, end, -+ range_info->line_count); -+ -+ /* A bug in GDB < 9 forces us to open and close the symtab for each -+ * iteration. */ -+ symtab = cb->symtab_open(cb, obj, module_info->name); -+ cb->block_open(cb, symtab, NULL, begin, end, range_info->name); -+ cb->symtab_close(cb, symtab); -+ -+ for (int line = 0; line < range_info->line_count; line++) { -+ struct gdb_line_mapping line_mapping; -+ struct line_info *line_info; -+ -+ line_info = (struct line_info *)symfile; -+ symfile += sizeof(*line_info) + line_info->file_length; -+ -+ line_mapping.pc = mod_start + line_info->start_offset; -+ line_mapping.line = line_info->line_number; -+ -+ LOG("\t%s:%u\r\n", line_info->file, line_info->line_number); -+ -+ /* The symbol table must be opened and closed on every single line -+ * for file names to work properly, as there is no other way to -+ * tell GDB that a certain line belongs to a different file than -+ * the rest of the table. Sigh. */ -+ symtab = cb->symtab_open(cb, obj, line_info->file); -+ -+ cb->block_open(cb, symtab, NULL, line_mapping.pc, end, -+ range_info->name); -+ cb->line_mapping_add(cb, symtab, 1, &line_mapping); -+ cb->symtab_close(cb, symtab); -+ } -+ } -+ -+ cb->object_close(cb, obj); -+ -+ return GDB_SUCCESS; -+} -+ -+static enum gdb_status read_emulator_info(struct gdb_reader_funcs *self, -+ struct gdb_symbol_callbacks *cb, -+ struct emulator_info *emulator_info) { -+ priv *priv = self->priv_data; -+ -+ priv->frame_layout = emulator_info->frame_layout; -+ priv->normal_exit = emulator_info->normal_exit; -+ -+ LOG("initialize: frame layout = %i\r\n", priv->frame_layout); -+ -+ return GDB_SUCCESS; -+} -+ -+static enum gdb_status read_debug_info(struct gdb_reader_funcs *self, -+ struct gdb_symbol_callbacks *cb, -+ void *memory, long memory_sz) { -+ struct debug_info *debug_info = memory; -+ -+ (void)memory_sz; -+ -+ switch (debug_info->header) { -+ case DEBUG_INFO_HEADER_EMULATOR: -+ return read_emulator_info(self, cb, &debug_info->payload.emu); -+ case DEBUG_INFO_HEADER_MODULE: -+ return read_module_info(self, cb, &debug_info->payload.mod); -+ } -+ -+ return GDB_FAIL; -+} -+ -+static void regfree(struct gdb_reg_value *reg) { -+ free(reg); -+} -+ -+static struct range *get_range(priv *priv, GDB_CORE_ADDR rip) { -+ for (int i = 0; i < priv->num_ranges; i++) { -+ if (rip >= priv->ranges[i].start && rip < priv->ranges[i].end) { -+ return &priv->ranges[i]; -+ } -+ } -+ -+ return NULL; -+} -+ -+static enum gdb_status unwind(struct gdb_reader_funcs *self, -+ struct gdb_unwind_callbacks *cb) { -+ GDB_CORE_ADDR rbp, rsp, rip; -+ struct range *range; -+ priv *priv; -+ -+ rbp = *(GDB_CORE_ADDR*)cb->reg_get(cb, X64_RBP)->value; -+ rsp = *(GDB_CORE_ADDR*)cb->reg_get(cb, X64_RSP)->value; -+ rip = *(GDB_CORE_ADDR*)cb->reg_get(cb, X64_RIP)->value; -+ -+ priv = self->priv_data; -+ range = get_range(priv, rip); -+ -+ /* Check that rip points to one of the addresses that we handle */ -+ if (range) { -+ struct gdb_reg_value *prev_rbp, *prev_rsp, *prev_rip; -+ -+ prev_rbp = malloc(sizeof(struct gdb_reg_value) + sizeof(char*)); -+ prev_rsp = malloc(sizeof(struct gdb_reg_value) + sizeof(char*)); -+ prev_rip = malloc(sizeof(struct gdb_reg_value) + sizeof(char*)); -+ -+ LOG("UNWIND match %s: rbp: 0x%lx rsp: 0x%lx rip: 0x%lx \r\n", -+ range->name, rbp, rsp, rip); -+ -+ prev_rbp->free = ®free; -+ prev_rbp->defined = 1; -+ prev_rbp->size = sizeof(char*); -+ prev_rsp->free = ®free; -+ prev_rsp->defined = 1; -+ prev_rsp->size = sizeof(char*); -+ prev_rip->free = ®free; -+ prev_rip->defined = 1; -+ prev_rip->size = sizeof(char*); -+ -+ if (priv->frame_layout == ERTS_FRAME_LAYOUT_FP_RA) { -+ /* Frame pointers are enabled, which means that rbp will point to -+ * where we stored the previous frames rbp. Also the previous -+ * frames address will be at rbp + 8 and the previous frames rsp -+ * will be rbp + 16. -+ * -+ * 0x00: <- prev_rsp -+ * 0x08: prev call addr -+ * 0x10: prev rbp <- curr rbp -+ * 0x18: current frame -+ * 0x20: <- curr rip */ -+ cb->target_read(rbp + 1 * sizeof(char*), &prev_rip->value, -+ sizeof(char*)); -+ cb->target_read(rbp + 0 * sizeof(char*), &prev_rbp->value, -+ sizeof(char*)); -+ *(GDB_CORE_ADDR*)prev_rsp->value = rbp + sizeof(char*[2]); -+ } else { -+ /* Normal frame layout, we need to scan the stack. */ -+ cb->target_read(rsp, &prev_rip->value, sizeof(char*)); -+ -+ for (rsp += sizeof(char*); ; rsp += sizeof(char*)) { -+ cb->target_read(rsp, &prev_rip->value, sizeof(char*)); -+ -+ LOG("rsp: 0x%lx rip: 0x%lx\r\n", -+ rsp, *(GDB_CORE_ADDR*)prev_rip->value); -+ -+ /* Check if it is a cp */ -+ if ((*(GDB_CORE_ADDR*)prev_rip->value & 0x3) == 0) { -+ break; -+ } -+ } -+ -+ *(GDB_CORE_ADDR*)prev_rsp->value = rsp; -+ *(GDB_CORE_ADDR*)prev_rbp->value = rsp - sizeof(char*); -+ } -+ -+ if (*(GDB_CORE_ADDR*)prev_rip->value == (uintptr_t)priv->normal_exit) { -+ LOG("Normal exit\r\n"); -+ *(GDB_CORE_ADDR*)prev_rsp->value = 0; -+ *(GDB_CORE_ADDR*)prev_rbp->value = 0; -+ } else { -+ LOG("UNWIND prev: rbp: 0x%lx rsp: 0x%lx rip: 0x%lx\r\n", -+ *(GDB_CORE_ADDR*)prev_rbp->value, -+ *(GDB_CORE_ADDR*)prev_rsp->value, -+ *(GDB_CORE_ADDR*)prev_rip->value); -+ } -+ -+ cb->reg_set(cb, X64_RIP, prev_rip); -+ cb->reg_set(cb, X64_RSP, prev_rsp); -+ cb->reg_set(cb, X64_RBP, prev_rbp); -+ -+ return GDB_SUCCESS; -+ } -+ -+ LOG("UNWIND no match: rbp: 0x%lx rsp: 0x%lx rip: 0x%lx\r\n", rbp, rsp, rip); -+ return GDB_FAIL; -+} -+ -+static struct gdb_frame_id get_frame_id(struct gdb_reader_funcs *self, -+ struct gdb_unwind_callbacks *cb){ -+ struct gdb_frame_id frame = {0, 0}; -+ GDB_CORE_ADDR rbp, rsp, rip; -+ struct range *range; -+ priv *priv; -+ -+ rbp = *(GDB_CORE_ADDR*)cb->reg_get(cb, X64_RBP)->value; -+ rsp = *(GDB_CORE_ADDR*)cb->reg_get(cb, X64_RSP)->value; -+ rip = *(GDB_CORE_ADDR*)cb->reg_get(cb, X64_RIP)->value; -+ -+ priv = self->priv_data; -+ range = get_range(priv, rip); -+ -+ LOG("FRAME: rip: 0x%lx rsp: 0x%lx rbp: 0x%lx \r\n", rip, rsp, rbp); -+ -+ if (range) { -+ frame.code_address = rip; -+ -+ if (priv->frame_layout == ERTS_FRAME_LAYOUT_FP_RA) { -+ frame.stack_address = rbp + sizeof(char*); -+ } else { -+ GDB_CORE_ADDR prev_rip; -+ -+ for (rsp += sizeof(char*); ; rsp += sizeof(char*)) { -+ cb->target_read(rsp, &prev_rip, sizeof(char*)); -+ -+ LOG("rsp: 0x%lx rip: 0x%lx\r\n", rsp, prev_rip); -+ -+ /* Check if it is a cp */ -+ if ((prev_rip & 0x3) == 0) { -+ break; -+ } -+ } -+ -+ frame.stack_address = rsp; -+ } -+ } -+ -+ LOG("FRAME: code_address: 0x%lx stack_address: 0x%lx\r\n", -+ frame.code_address, frame.stack_address); -+ -+ return frame; -+} -+ -+static void destroy(struct gdb_reader_funcs *self){ -+ free(self); -+} -+ -+struct gdb_reader_funcs *gdb_init_reader(void){ -+ struct gdb_reader_funcs *funcs = malloc(sizeof(struct gdb_reader_funcs)); -+ priv *priv_data = malloc(sizeof(priv)); -+ -+ priv_data->num_ranges = 1; -+ priv_data->ranges = malloc(sizeof(range)); -+ priv_data->ranges[0].start = 0; -+ priv_data->ranges[0].end = 0; -+ -+ funcs->reader_version = GDB_READER_INTERFACE_VERSION; -+ funcs->priv_data = priv_data; -+ -+ funcs->read = read_debug_info; -+ funcs->unwind = unwind; -+ funcs->get_frame_id = get_frame_id; -+ funcs->destroy = destroy; -+ -+#ifdef HARD_DEBUG -+ log = fopen("/tmp/jit-reader.log","w+"); -+ if (!log) fprintf(stderr,"Could not open /tmp/jit-reader.log"); -+#endif -+ -+ return funcs; -+} -diff --git a/erts/etc/unix/gdb-tools/jit-reader.mk b/erts/etc/unix/gdb-tools/jit-reader.mk -new file mode 100644 -index 0000000000..8ef0bccec2 ---- /dev/null -+++ b/erts/etc/unix/gdb-tools/jit-reader.mk -@@ -0,0 +1,9 @@ -+EXTRA_LIBS = $(BINDIR)/jit-reader.so -+ -+jit-reader: $(EXTRA_LIBS) -+ -+$(OBJDIR)/jit-reader.o: $(GDB_TOOLS)/jit-reader.c $(GDB_TOOLS)/jit-reader.h -+ $(V_CC) $(DED_CFLAGS) -I$(ETC) -o $@ -c $< -+ -+$(BINDIR)/jit-reader.so: $(OBJDIR)/jit-reader.o -+ $(V_LD) $(DED_LDFLAGS) -o $@ $^ diff --git a/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch b/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch new file mode 100644 index 0000000..daf9e82 --- /dev/null +++ b/otp-0009-Don-t-send-unasked-for-systemd-notifications.patch @@ -0,0 +1,56 @@ +From: Alexey Lebedeff +Date: Tue, 29 Mar 2016 20:30:22 +0300 +Subject: [PATCH] Don't send unasked for systemd notifications + +Suppose we have some erlang system that uses systemd unit with +Type=notify - so this should send startup confirmation itself. But if +systemd-enabled epmd will be started as a first step of that system +startup, empd startup confirmation will be misinterpeted by systemd. And +our erlang service will be considered 'ready' to early. Also this will +interefere with systemd MAINPID detection: systemd will be monitoring +`epmd` process instead of `beam` one. + +For example, rabbitmq works around this issue by starting epmd using +separate short-lived beam process, with NOTIFY_SOCKET environment +variable reset - only in this way we could be sure that epmd will not +interfere with rabbit startup sequence. + +This patch disables indiscriminate confirmation sending, and does it +only when it was explicitly asked to do so. + +diff --git a/erts/epmd/src/epmd.c b/erts/epmd/src/epmd.c +index 5513cb2d7e..4740ce8534 100644 +--- a/erts/epmd/src/epmd.c ++++ b/erts/epmd/src/epmd.c +@@ -592,8 +592,10 @@ void epmd_cleanup_exit(EpmdVars *g, int exitval) + free(g->argv); + } + #ifdef HAVE_SYSTEMD_DAEMON +- sd_notifyf(0, "STATUS=Exited.\n" +- "ERRNO=%i", exitval); ++ if (g->is_systemd){ ++ sd_notifyf(0, "STATUS=Exited.\n" ++ "ERRNO=%i", exitval); ++ } + #endif /* HAVE_SYSTEMD_DAEMON */ + exit(exitval); + } +diff --git a/erts/epmd/src/epmd_srv.c b/erts/epmd/src/epmd_srv.c +index e1bac99ef9..59d59ad0f7 100644 +--- a/erts/epmd/src/epmd_srv.c ++++ b/erts/epmd/src/epmd_srv.c +@@ -452,9 +452,11 @@ void run(EpmdVars *g) + num_sockets = bound; + #ifdef HAVE_SYSTEMD_DAEMON + } +- sd_notifyf(0, "READY=1\n" +- "STATUS=Processing port mapping requests...\n" +- "MAINPID=%lu", (unsigned long) getpid()); ++ if (g->is_systemd) { ++ sd_notifyf(0, "READY=1\n" ++ "STATUS=Processing port mapping requests...\n" ++ "MAINPID=%lu", (unsigned long) getpid()); ++ } + #endif /* HAVE_SYSTEMD_DAEMON */ + + dbg_tty_printf(g,2,"entering the main select() loop"); diff --git a/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch b/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch new file mode 100644 index 0000000..3bd9868 --- /dev/null +++ b/otp-0010-Fix-decoding-of-LLONG_MIN-in-erl_decode.patch @@ -0,0 +1,69 @@ +From: =?UTF-8?q?Bj=C3=B6rn-Egil=20Dahlberg?= +Date: Fri, 10 Jun 2016 16:40:38 +0200 +Subject: [PATCH] Fix decoding of LLONG_MIN in erl_decode + +Reported-by: Peter Lemenkov + +diff --git a/lib/erl_interface/src/legacy/erl_marshal.c b/lib/erl_interface/src/legacy/erl_marshal.c +index a4216c9541..6a1b573d52 100644 +--- a/lib/erl_interface/src/legacy/erl_marshal.c ++++ b/lib/erl_interface/src/legacy/erl_marshal.c +@@ -727,6 +727,13 @@ static ETERM *erl_decode_it(unsigned char **ext) + ((*ext)[2]) << 8 |((*ext)[3]); + *ext += 4; + big_cont: ++ ++#ifdef _MSC_VER ++#define MAX_TO_NEGATE 0x8000000000000000Ui64 ++#else ++#define MAX_TO_NEGATE 0x8000000000000000ULL ++#endif ++ + sign = *(*ext)++; + if (arity > 8) + goto big_truncate; +@@ -763,23 +770,28 @@ static ETERM *erl_decode_it(unsigned char **ext) + *ext += arity; + return ep; + } else { +- /* Fits in a long long */ +- int x; +- long long l = 0LL; +- +- for(x = 0 ; x < arity ; x++) { +- l |= ((long long)(*ext)[x]) << ((long long)(8*x)); +- } +- if (sign) { +- l = -l; +- if (l > 0) goto big_truncate; +- } +- +- ERL_TYPE(ep) = ERL_LONGLONG; +- ep->uval.llval.i = l; +- *ext += arity; +- return ep; ++ /* Fits in a signed long long */ ++ int x; ++ unsigned long long l = 0LL; ++ long long sl; ++ ++ for(x = 0 ; x < arity ; x++) { ++ l |= ((unsigned long long)(*ext)[x]) << ((unsigned long long)(8*x)); ++ } ++ ++ sl = (long long)l; ++ ++ if (sign && l != MAX_TO_NEGATE) { ++ sl = -sl; ++ if (sl > 0) goto big_truncate; ++ } ++ ++ ERL_TYPE(ep) = ERL_LONGLONG; ++ ep->uval.llval.i = sl; ++ *ext += arity; ++ return ep; + } ++#undef MAX_TO_NEGATE + big_truncate: + /* truncate to: (+/-) 1 */ + #ifdef DEBUG diff --git a/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch b/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch new file mode 100644 index 0000000..7d118fc --- /dev/null +++ b/otp-0011-Respect-proto_dist-switch-while-connection-to-EPMD.patch @@ -0,0 +1,47 @@ +From: Peter Lemenkov +Date: Thu, 14 Jul 2016 17:51:16 +0300 +Subject: [PATCH] Respect -proto_dist switch while connection to EPMD + +Signed-off-by: Peter Lemenkov + +diff --git a/lib/kernel/src/erl_epmd.erl b/lib/kernel/src/erl_epmd.erl +index c6202dd796..ec2e3309c8 100644 +--- a/lib/kernel/src/erl_epmd.erl ++++ b/lib/kernel/src/erl_epmd.erl +@@ -103,6 +103,10 @@ names(EpmdAddr) -> + + register_node(Name, PortNo) -> + register_node(Name, PortNo, inet). ++register_node(Name, PortNo, inet_tcp) -> ++ register_node(Name, PortNo, inet); ++register_node(Name, PortNo, inet6_tcp) -> ++ register_node(Name, PortNo, inet6); + register_node(Name, PortNo, Family) -> + gen_server:call(erl_epmd, {register, Name, PortNo, Family}, infinity). + +diff --git a/lib/kernel/src/inet_tcp_dist.erl b/lib/kernel/src/inet_tcp_dist.erl +index 64b28bb49b..ffbd5d5a21 100644 +--- a/lib/kernel/src/inet_tcp_dist.erl ++++ b/lib/kernel/src/inet_tcp_dist.erl +@@ -73,7 +73,7 @@ gen_listen(Driver, Name) -> + {ok, Socket} -> + TcpAddress = get_tcp_address(Driver, Socket), + {_,Port} = TcpAddress#net_address.address, +- case erl_epmd:register_node(Name, Port) of ++ case erl_epmd:register_node(Name, Port, Driver) of + {ok, Creation} -> + {ok, {Socket, TcpAddress, Creation}}; + Error -> +diff --git a/lib/ssl/src/ssl_tls_dist_proxy.erl b/lib/ssl/src/ssl_tls_dist_proxy.erl +index 4c789793ec..7c6b14fcaf 100644 +--- a/lib/ssl/src/ssl_tls_dist_proxy.erl ++++ b/lib/ssl/src/ssl_tls_dist_proxy.erl +@@ -116,7 +116,7 @@ handle_call({listen, Driver, Name}, _From, State) -> + {ok, TcpAddress} = get_tcp_address(Socket), + {ok, WorldTcpAddress} = get_tcp_address(World), + {_,Port} = WorldTcpAddress#net_address.address, +- case erl_epmd:register_node(Name, Port) of ++ case erl_epmd:register_node(Name, Port, Driver) of + {ok, Creation} -> + {reply, {ok, {Socket, TcpAddress, Creation}}, + State#state{listen={Socket, World}}}; diff --git a/otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch b/otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch new file mode 100644 index 0000000..d3cedaa --- /dev/null +++ b/otp-0012-erts-Fix-correct-link-flags-for-hipe_mkliterals.patch @@ -0,0 +1,45 @@ +From: Sverker Eriksson +Date: Wed, 9 Nov 2016 16:52:23 +0100 +Subject: [PATCH] erts: Fix correct link flags for hipe_mkliterals + +and no need for $(INCLUDED). + +diff --git a/erts/emulator/Makefile.in b/erts/emulator/Makefile.in +index a919f0e3ac..15e5609d08 100644 +--- a/erts/emulator/Makefile.in ++++ b/erts/emulator/Makefile.in +@@ -53,6 +53,7 @@ CREATE_DIRS= + LDFLAGS=@LDFLAGS@ + ARFLAGS=rc + OMIT_OMIT_FP=no ++TYPE_LIBS= + + ifeq ($(TYPE),debug) + PURIFY = +@@ -91,7 +92,7 @@ PURIFY = + TYPEMARKER = .gcov + TYPE_FLAGS = $(DEBUG_CFLAGS) -DERTS_GCOV -DNO_JUMP_TABLE -fprofile-arcs -ftest-coverage -O0 -DERTS_CAN_INLINE=0 -DERTS_INLINE= + ifneq ($(findstring solaris,$(TARGET)),solaris) +-LIBS += -lgcov ++TYPE_LIBS = -lgcov + endif + ENABLE_ALLOC_TYPE_VARS += debug + else +@@ -147,6 +148,8 @@ endif + endif + endif + ++LIBS += $(TYPE_LIBS) ++ + comma:=, + space:= + space+= +@@ -956,7 +959,7 @@ $(OBJDIR)/%.o: hipe/%.c + $(V_CC) $(subst O2,O3, $(CFLAGS)) $(INCLUDES) -c $< -o $@ + + $(BINDIR)/hipe_mkliterals$(TF_MARKER): $(OBJDIR)/hipe_mkliterals.o +- $(ld_verbose)$(CC) $(CFLAGS) $(INCLUDES) -o $@ $< ++ $(ld_verbose)$(CC) $(LDFLAGS) -o $@ $< $(TYPE_LIBS) + + $(OBJDIR)/hipe_mkliterals.o: $(HIPE_ASM) $(TTF_DIR)/erl_alloc_types.h $(DTRACE_HEADERS) \ + $(TTF_DIR)/OPCODES-GENERATED $(TARGET)/TABLES-GENERATED diff --git a/otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch b/otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch new file mode 100644 index 0000000..2f585c6 --- /dev/null +++ b/otp-0013-erts-Disable-fPIE-for-HiPE-on-x86_64.patch @@ -0,0 +1,32 @@ +From: Sverker Eriksson +Date: Tue, 8 Nov 2016 16:52:32 +0100 +Subject: [PATCH] erts: Disable -fPIE for HiPE on x86_64 + + +diff --git a/erts/configure.in b/erts/configure.in +index 4ade3b3086..e99d22a0af 100644 +--- a/erts/configure.in ++++ b/erts/configure.in +@@ -2887,6 +2887,22 @@ case $ARCH-$OPSYS in + ;; + esac + ++dnl Check to disable -fPIE and friends for HiPE on amd64 ++if test X${enable_hipe} = Xyes && test X$ARCH = Xamd64; then ++ AC_TRY_COMPILE(, [#if defined(__pie__) || defined(__PIE__) ++ #error -fPIE is enabled by default ++ #endif], ++ [AC_MSG_NOTICE([No -fPIE enabled by default])], ++ [AC_MSG_WARN([Security feature -fPIE will be disabled for HiPE]) ++ STATIC_CFLAGS="-fno-PIE $STATIC_CFLAGS" ++ saved_LDFLAGS=$LDFLAGS ++ LDFLAGS="-no-pie $LDFLAGS" ++ AC_TRY_LINK(,, [], ++ [AC_MSG_WARN([Linked does not accept option -no-pie]) ++ LDFLAGS=$saved_LDFLAGS])]) ++ ++fi ++ + if test X${enable_fp_exceptions} = Xauto ; then + case $host_os in + *linux*) diff --git a/otp-0014-Fix-CVE-2016-10253.patch b/otp-0014-Fix-CVE-2016-10253.patch new file mode 100644 index 0000000..ca5ab5d --- /dev/null +++ b/otp-0014-Fix-CVE-2016-10253.patch @@ -0,0 +1,318 @@ +From: Zephyr Pellerin +Date: Mon, 20 Mar 2017 15:36:41 -0700 +Subject: [PATCH] Fix CVE-2016-10253 + + +diff --git a/erts/emulator/pcre/pcre_compile.c b/erts/emulator/pcre/pcre_compile.c +index d48126a55d..15a81fae56 100644 +--- a/erts/emulator/pcre/pcre_compile.c ++++ b/erts/emulator/pcre/pcre_compile.c +@@ -2335,34 +2335,36 @@ for (;;) + } + } + +- +- + /************************************************* +-* Scan compiled branch for non-emptiness * +-*************************************************/ ++ * Scan compiled branch for non-emptiness * ++ *************************************************/ + + /* This function scans through a branch of a compiled pattern to see whether it +-can match the empty string or not. It is called from could_be_empty() +-below and from compile_branch() when checking for an unlimited repeat of a +-group that can match nothing. Note that first_significant_code() skips over +-backward and negative forward assertions when its final argument is TRUE. If we +-hit an unclosed bracket, we return "empty" - this means we've struck an inner +-bracket whose current branch will already have been scanned. +- +-Arguments: +- code points to start of search +- endcode points to where to stop +- utf TRUE if in UTF-8 / UTF-16 / UTF-32 mode +- cd contains pointers to tables etc. +- +-Returns: TRUE if what is matched could be empty ++ can match the empty string or not. It is called from could_be_empty() ++ below and from compile_branch() when checking for an unlimited repeat of a ++ group that can match nothing. Note that first_significant_code() skips over ++ backward and negative forward assertions when its final argument is TRUE. If we ++ hit an unclosed bracket, we return "empty" - this means we've struck an inner ++ bracket whose current branch will already have been scanned. ++ ++ Arguments: ++ code points to start of search ++ endcode points to where to stop ++ utf TRUE if in UTF-8 / UTF-16 / UTF-32 mode ++ cd contains pointers to tables etc. ++ recurses chain of recurse_check to catch mutual recursion ++ ++ Returns: TRUE if what is matched could be empty + */ + ++ + static BOOL + could_be_empty_branch(const pcre_uchar *code, const pcre_uchar *endcode, +- BOOL utf, compile_data *cd) ++ BOOL utf, compile_data *cd, recurse_check *recurses) + { + register pcre_uchar c; ++recurse_check this_recurse; ++ + for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE); + code < endcode; + code = first_significant_code(code + PRIV(OP_lengths)[c], TRUE)) +@@ -2390,25 +2392,47 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE); + + if (c == OP_RECURSE) + { +- const pcre_uchar *scode; ++ const pcre_uchar *scode = cd->start_code + GET(code, 1); ++ const pcre_uchar *endgroup = scode; + BOOL empty_branch; + +- /* Test for forward reference */ ++ /* Test for forward reference or uncompleted reference. This is disabled ++ when called to scan a completed pattern by setting cd->start_workspace to ++ NULL. */ + +- for (scode = cd->start_workspace; scode < cd->hwm; scode += LINK_SIZE) +- if ((int)GET(scode, 0) == (int)(code + 1 - cd->start_code)) return TRUE; ++ if (cd->start_workspace != NULL) ++ { ++ const pcre_uchar *tcode; ++ for (tcode = cd->start_workspace; tcode < cd->hwm; tcode += LINK_SIZE) ++ if ((int)GET(tcode, 0) == (int)(code + 1 - cd->start_code)) return TRUE; ++ if (GET(scode, 1) == 0) return TRUE; /* Unclosed */ ++ } + +- /* Not a forward reference, test for completed backward reference */ ++ /* If the reference is to a completed group, we need to detect whether this ++ is a recursive call, as otherwise there will be an infinite loop. If it is ++ a recursion, just skip over it. Simple recursions are easily detected. For ++ mutual recursions we keep a chain on the stack. */ + +- empty_branch = FALSE; +- scode = cd->start_code + GET(code, 1); +- if (GET(scode, 1) == 0) return TRUE; /* Unclosed */ ++ do endgroup += GET(endgroup, 1); while (*endgroup == OP_ALT); ++ if (code >= scode && code <= endgroup) continue; /* Simple recursion */ ++ else ++ { ++ recurse_check *r = recurses; ++ for (r = recurses; r != NULL; r = r->prev) ++ if (r->group == scode) break; ++ if (r != NULL) continue; /* Mutual recursion */ ++ } ++ ++ /* Completed reference; scan the referenced group, remembering it on the ++ stack chain to detect mutual recursions. */ + +- /* Completed backwards reference */ ++ empty_branch = FALSE; ++ this_recurse.prev = recurses; ++ this_recurse.group = scode; + + do + { +- if (could_be_empty_branch(scode, endcode, utf, cd)) ++ if (could_be_empty_branch(scode, endcode, utf, cd, &this_recurse)) + { + empty_branch = TRUE; + break; +@@ -2448,7 +2472,7 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE); + if (c == OP_BRA || c == OP_BRAPOS || + c == OP_CBRA || c == OP_CBRAPOS || + c == OP_ONCE || c == OP_ONCE_NC || +- c == OP_COND) ++ c == OP_COND || c == OP_SCOND) + { + BOOL empty_branch; + if (GET(code, 1) == 0) return TRUE; /* Hit unclosed bracket */ +@@ -2464,8 +2488,8 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE); + empty_branch = FALSE; + do + { +- if (!empty_branch && could_be_empty_branch(code, endcode, utf, cd)) +- empty_branch = TRUE; ++ if (!empty_branch && could_be_empty_branch(code, endcode, utf, cd, ++ recurses)) empty_branch = TRUE; + code += GET(code, 1); + } + while (*code == OP_ALT); +@@ -2522,34 +2546,57 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE); + + /* Opcodes that must match a character */ + ++ case OP_ANY: ++ case OP_ALLANY: ++ case OP_ANYBYTE: ++ + case OP_PROP: + case OP_NOTPROP: ++ case OP_ANYNL: ++ ++ case OP_NOT_HSPACE: ++ case OP_HSPACE: ++ case OP_NOT_VSPACE: ++ case OP_VSPACE: + case OP_EXTUNI: ++ + case OP_NOT_DIGIT: + case OP_DIGIT: + case OP_NOT_WHITESPACE: + case OP_WHITESPACE: + case OP_NOT_WORDCHAR: + case OP_WORDCHAR: +- case OP_ANY: +- case OP_ALLANY: +- case OP_ANYBYTE: ++ + case OP_CHAR: + case OP_CHARI: + case OP_NOT: + case OP_NOTI: ++ + case OP_PLUS: ++ case OP_PLUSI: + case OP_MINPLUS: +- case OP_POSPLUS: +- case OP_EXACT: ++ case OP_MINPLUSI: ++ + case OP_NOTPLUS: ++ case OP_NOTPLUSI: + case OP_NOTMINPLUS: ++ case OP_NOTMINPLUSI: ++ ++ case OP_POSPLUS: ++ case OP_POSPLUSI: + case OP_NOTPOSPLUS: ++ case OP_NOTPOSPLUSI: ++ ++ case OP_EXACT: ++ case OP_EXACTI: + case OP_NOTEXACT: ++ case OP_NOTEXACTI: ++ + case OP_TYPEPLUS: + case OP_TYPEMINPLUS: + case OP_TYPEPOSPLUS: + case OP_TYPEEXACT: ++ + return FALSE; + + /* These are going to continue, as they may be empty, but we have to +@@ -2583,30 +2630,58 @@ for (code = first_significant_code(code + PRIV(OP_lengths)[*code], TRUE); + return TRUE; + + /* In UTF-8 mode, STAR, MINSTAR, POSSTAR, QUERY, MINQUERY, POSQUERY, UPTO, +- MINUPTO, and POSUPTO may be followed by a multibyte character */ ++ MINUPTO, and POSUPTO and their caseless and negative versions may be ++ followed by a multibyte character. */ + + #if defined SUPPORT_UTF && !defined COMPILE_PCRE32 + case OP_STAR: + case OP_STARI: ++ case OP_NOTSTAR: ++ case OP_NOTSTARI: ++ + case OP_MINSTAR: + case OP_MINSTARI: ++ case OP_NOTMINSTAR: ++ case OP_NOTMINSTARI: ++ + case OP_POSSTAR: + case OP_POSSTARI: ++ case OP_NOTPOSSTAR: ++ case OP_NOTPOSSTARI: ++ + case OP_QUERY: + case OP_QUERYI: ++ case OP_NOTQUERY: ++ case OP_NOTQUERYI: ++ + case OP_MINQUERY: + case OP_MINQUERYI: ++ case OP_NOTMINQUERY: ++ case OP_NOTMINQUERYI: ++ + case OP_POSQUERY: + case OP_POSQUERYI: ++ case OP_NOTPOSQUERY: ++ case OP_NOTPOSQUERYI: ++ + if (utf && HAS_EXTRALEN(code[1])) code += GET_EXTRALEN(code[1]); + break; + + case OP_UPTO: + case OP_UPTOI: ++ case OP_NOTUPTO: ++ case OP_NOTUPTOI: ++ + case OP_MINUPTO: + case OP_MINUPTOI: ++ case OP_NOTMINUPTO: ++ case OP_NOTMINUPTOI: ++ + case OP_POSUPTO: + case OP_POSUPTOI: ++ case OP_NOTPOSUPTO: ++ case OP_NOTPOSUPTOI: ++ + if (utf && HAS_EXTRALEN(code[1 + IMM2_SIZE])) code += GET_EXTRALEN(code[1 + IMM2_SIZE]); + break; + #endif +@@ -2632,7 +2707,6 @@ return TRUE; + } + + +- + /************************************************* + * Scan compiled regex for non-emptiness * + *************************************************/ +@@ -2660,7 +2734,7 @@ could_be_empty(const pcre_uchar *code, const pcre_uchar *endcode, + { + while (bcptr != NULL && bcptr->current_branch >= code) + { +- if (!could_be_empty_branch(bcptr->current_branch, endcode, utf, cd)) ++ if (!could_be_empty_branch(bcptr->current_branch, endcode, utf, cd, NULL)) + return FALSE; + bcptr = bcptr->outer; + } +@@ -2668,7 +2742,6 @@ return TRUE; + } + + +- + /************************************************* + * Check for POSIX class syntax * + *************************************************/ +@@ -5392,7 +5465,7 @@ for (;; ptr++) + pcre_uchar *scode = bracode; + do + { +- if (could_be_empty_branch(scode, ketcode, utf, cd)) ++ if (could_be_empty_branch(scode, ketcode, utf, cd, NULL)) + { + *bracode += OP_SBRA - OP_BRA; + break; +diff --git a/erts/emulator/pcre/pcre_internal.h b/erts/emulator/pcre/pcre_internal.h +index af436bd99b..eb0db89619 100644 +--- a/erts/emulator/pcre/pcre_internal.h ++++ b/erts/emulator/pcre/pcre_internal.h +@@ -2455,6 +2455,13 @@ typedef struct branch_chain { + pcre_uchar *current_branch; + } branch_chain; + ++/* Structure for mutual recursion detection. */ ++ ++typedef struct recurse_check { ++ struct recurse_check *prev; ++ const pcre_uchar *group; ++} recurse_check; ++ + /* Structure for items in a linked list that represents an explicit recursive + call within the pattern; used by pcre_exec(). */ + diff --git a/otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch b/otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch new file mode 100644 index 0000000..6801da6 --- /dev/null +++ b/otp-0015-Make-inet-gethostbyname-respect-resolver-option-inet.patch @@ -0,0 +1,58 @@ +From: Daniel Sommermann +Date: Fri, 20 May 2016 15:47:16 -0700 +Subject: [PATCH] Make inet:gethostbyname respect resolver option `inet6` + +This makes the implementation text of inet:gethostbyname/1 identical to +that of inet_res:gethostbyname/1. I also copied over the doc note about +this resolver option. + +diff --git a/lib/kernel/doc/src/inet.xml b/lib/kernel/doc/src/inet.xml +index 088d78c1d6..f38af7a06b 100644 +--- a/lib/kernel/doc/src/inet.xml ++++ b/lib/kernel/doc/src/inet.xml +@@ -11,7 +11,7 @@ + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at +- ++ + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software +@@ -184,7 +184,12 @@ fe80::204:acff:fe17:bf38 + + Return a hostent record for the host with the given name + +-

Returns a hostent record given a hostname.

++

Returns a hostent record for the host with the specified ++ hostname.

++

If resolver option inet6 is true, ++ an IPv6 address is looked up. If that fails, ++ the IPv4 address is looked up and returned on ++ IPv6-mapped IPv4 format.

+
+ + +@@ -1288,4 +1293,3 @@ setcap cap_sys_admin,cap_sys_ptrace,cap_dac_read_search+epi beam.smp + + + +- +diff --git a/lib/kernel/src/inet.erl b/lib/kernel/src/inet.erl +index c1ae99ea24..713a9cf725 100644 +--- a/lib/kernel/src/inet.erl ++++ b/lib/kernel/src/inet.erl +@@ -439,7 +439,12 @@ getstat(Socket,What) -> + Hostent :: hostent(). + + gethostbyname(Name) -> +- gethostbyname_tm(Name, inet, false). ++ case inet_db:res_option(inet6) of ++ true -> ++ gethostbyname_tm(Name, inet6, false); ++ false -> ++ gethostbyname_tm(Name, inet, false) ++ end. + + -spec gethostbyname(Hostname, Family) -> + {ok, Hostent} | {error, posix()} when diff --git a/otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch b/otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch new file mode 100644 index 0000000..2d3efdf --- /dev/null +++ b/otp-0016-Fix-erl_epmd-port_please-when-using-IPv6.patch @@ -0,0 +1,26 @@ +From: John Eckersberg +Date: Wed, 14 Jun 2017 12:32:17 -0400 +Subject: [PATCH] Fix erl_epmd:port_please when using IPv6 + +This mirrors the behavior of inet:gethostbyname when no family or +timeout is supplied. + +diff --git a/lib/kernel/src/erl_epmd.erl b/lib/kernel/src/erl_epmd.erl +index ec2e3309c8..07bfb451ae 100644 +--- a/lib/kernel/src/erl_epmd.erl ++++ b/lib/kernel/src/erl_epmd.erl +@@ -79,7 +79,13 @@ port_please(Node, EpmdAddr, Timeout) -> + + + port_please1(Node,HostName, Timeout) -> +- case inet:gethostbyname(HostName, inet, Timeout) of ++ Family = case inet_db:res_option(inet6) of ++ true -> ++ inet6; ++ false -> ++ inet ++ end, ++ case inet:gethostbyname(HostName, Family, Timeout) of + {ok,{hostent, _Name, _ , _Af, _Size, [EpmdAddr | _]}} -> + get_port(Node, EpmdAddr, Timeout); + Else -> diff --git a/otp-get-patches.sh b/otp-get-patches.sh index 75d4a54..033db0e 100755 --- a/otp-get-patches.sh +++ b/otp-get-patches.sh @@ -17,6 +17,18 @@ # # # start of autogenerated patch tag list # # end of autogenerated patch tag list +# # start of autogenerated prep patch list +# # end of autogenerated prep patch list +# +# The following special comment lines in the git commit messages +# will be interpreted: +# +# Fedora-Spec-Comment: This patch only applies to EL6 builds +# Fedora-Spec-Before: %if 0%?el6} +# Fedora-Spec-After: %endif +# +# If there is no "Fedora-Spec-Comment:" line, we will use +# "Fedora specific patch". # Command line parsing otp_dir="${1:?'Fatal: otp git repo dir required'}" @@ -37,29 +49,44 @@ test -s "$tmpdir/patch-list.txt" # Process patch files echo "# start of autogenerated patch tag list" > "$tmpdir/patch-list-tags.txt" +echo "# start of autogenerated prep patch list" > "$tmpdir/patch-list-prep.txt" n=1 while read patch do otppatch="$(dirname "$patch")/otp-$(basename "$patch")" ${SED-sed} -e '1d' -e '/^-- $/,$d' "$patch" > "$otppatch" rm -f "$patch" + comment="$(sed -n 's/^Fedora-Spec-Comment:\s*//p' "$otppatch")" + if test "x$comment" = "x"; then comment="Fedora specific patch"; fi + echo "# ${comment}" >> "$tmpdir/patch-list-tags.txt" + echo "# $(sed -n 's/^Subject: \[PATCH\] //p' "$otppatch")" >> "$tmpdir/patch-list-tags.txt" echo "Patch$n: $(basename "$otppatch")" >> "$tmpdir/patch-list-tags.txt" + base="$(basename "$patch" ".patch" | sed 's/^00[0-9][0-9]-//')" + backupext=".$(echo -n "$base" | tr -c -s '[:alnum:]' '_')" + sed -n 's/^Fedora-Spec-Before:\s*//p' "$otppatch" >> "$tmpdir/patch-list-prep.txt" + echo "%patch$n -p1 -b ${backupext}" >> "$tmpdir/patch-list-prep.txt" + sed -n 's/^Fedora-Spec-After:\s*//p' "$otppatch" >> "$tmpdir/patch-list-prep.txt" n=$(($n + 1)) done < "$tmpdir/patch-list.txt" echo "# end of autogenerated patch tag list" >> "$tmpdir/patch-list-tags.txt" +echo "# end of autogenerated prep patch list" >> "$tmpdir/patch-list-prep.txt" # Create updated spec file specfile="erlang.spec" newspec1="${tmpdir}/${specfile}.new1" +newspec2="${tmpdir}/${specfile}.new2" sed '/^# start of autogenerated patch tag list$/,$d' "$specfile" > "$newspec1" cat "$tmpdir/patch-list-tags.txt" >> "$newspec1" sed '1,/^# end of autogenerated patch tag list/d' "$specfile" >> "$newspec1" +sed '/^# start of autogenerated prep patch list$/,$d' "$newspec1" > "$newspec2" +cat "$tmpdir/patch-list-prep.txt" >> "$newspec2" +sed '1,/^# end of autogenerated prep patch list/d' "$newspec1" >> "$newspec2" # Actually put all changes into git index git rm -f otp-00*.patch mv "$tmpdir/otp-00"*.patch . git add otp-00*.patch -mv -f "$newspec1" "$specfile" +mv -f "$newspec2" "$specfile" git add "$specfile" rm -rf "$tmpdir" diff --git a/otp-make-subpackages.py b/otp-make-subpackages.py index fd9df5e..e004bf3 100644 --- a/otp-make-subpackages.py +++ b/otp-make-subpackages.py @@ -24,7 +24,9 @@ package_headers = {} package_noarch = [ "emacs-erlang", "emacs-erlang-el", - "erlang-doc"] + "erlang-doc", + "xemacs-erlang", + "xemacs-erlang-el"] # These are additional Requires which cannot be picked up automatically (yet). # TODO these should be added automatically @@ -42,6 +44,8 @@ package_additional_requires = { # Stores files/links in /usr/share/java so has to depend on jpackage-utils "erlang-jinterface": ["%{name}-erts%{?_isa} = %{version}-%{release}", "jpackage-utils"], "erlang-wx": ["mesa-libGL", "mesa-libGLU"], + "xemacs-erlang": ["emacs-common-erlang = %{version}-%{release}", "xemacs(bin) >= %{_xemacs_version}"], + "xemacs-erlang-el": ["xemacs-erlang = %{version}-%{release}"] } package_additional_buildrequires = { @@ -66,6 +70,8 @@ package_additional_buildrequires = { "erlang-jinterface": ["java-devel"], "erlang-odbc": ["unixODBC-devel"], + "erlang-wx": ["wxGTK-devel"], + "xemacs-erlang": ["xemacs", "xemacs-packages-extra-el"], } package_additional_obsoletes = { diff --git a/sources b/sources index 674a546..4f1d585 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (otp-OTP-26.2.5.16.tar.gz) = 4e973be7e8ccad196d59759108a521535b0f046268eb0406f789a50f411fa27c9c11fcfb61a7218605bf1b32921bb52c52fc7c99917e1acfc0d3ed09437129b2 +SHA512 (otp-OTP-18.3.4.5.tar.gz) = 359562801008c8623c24a26149ee2253474e24c3d2884acdfb4f15b4a284c9a5dbc02a9da80a4b344912239452d8742dd467ac47d452c72c16637dfe05021736