diff --git a/erlang.spec b/erlang.spec index e5ad726..ca182a3 100644 --- a/erlang.spec +++ b/erlang.spec @@ -20,7 +20,7 @@ ## %global __with_emacs 1 -%global __with_xemacs 1 +%global __with_xemacs 0 %global __with_examples 1 %global __with_java 1 # @@ -60,8 +60,8 @@ Name: erlang -Version: 20.3.8.18 -Release: 2%{?dist} +Version: 21.2.4 +Release: 1%{?dist} Summary: General-purpose programming language and runtime environment License: ASL 2.0 @@ -98,11 +98,10 @@ Patch3: otp-0003-Do-not-install-C-sources.patch Patch4: otp-0004-Do-not-install-Java-sources.patch Patch5: otp-0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch Patch6: otp-0006-Do-not-install-erlang-sources.patch -Patch7: otp-0007-Fix-erl_epmd-port_please-when-using-IPv6.patch -Patch8: otp-0008-Add-extra-search-directory.patch -Patch9: otp-0009-Avoid-forking-sed-to-get-basename.patch -Patch10: otp-0010-Load-man-pages-from-system-wide-directory.patch -Patch11: otp-0011-Improve-nodes-querying.patch +Patch7: otp-0007-Add-extra-search-directory.patch +Patch8: otp-0008-Avoid-forking-sed-to-get-basename.patch +Patch9: otp-0009-Load-man-pages-from-system-wide-directory.patch +Patch10: otp-0010-Improve-nodes-querying.patch # end of autogenerated patch tag list BuildRequires: gcc @@ -132,13 +131,6 @@ Requires: %{name}-asn1%{?_isa} = %{version}-%{release} Requires: %{name}-common_test%{?_isa} = %{version}-%{release} %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} @@ -156,10 +148,8 @@ Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-et%{?_isa} = %{version}-%{release} %endif %{__with_wxwidgets} Requires: %{name}-eunit%{?_isa} = %{version}-%{release} +Requires: %{name}-ftp%{?_isa} = %{version}-%{release} 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} @@ -173,7 +163,6 @@ Requires: %{name}-mnesia%{?_isa} = %{version}-%{release} Requires: %{name}-observer%{?_isa} = %{version}-%{release} %endif %{__with_wxwidgets} Requires: %{name}-odbc%{?_isa} = %{version}-%{release} -Requires: %{name}-orber%{?_isa} = %{version}-%{release} Requires: %{name}-os_mon%{?_isa} = %{version}-%{release} Requires: %{name}-otp_mibs%{?_isa} = %{version}-%{release} Requires: %{name}-parsetools%{?_isa} = %{version}-%{release} @@ -188,6 +177,7 @@ 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} %if %{__with_wxwidgets} Requires: %{name}-wx%{?_isa} = %{version}-%{release} @@ -246,84 +236,6 @@ 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 -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 -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 -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 -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 -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 -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 -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) @@ -444,14 +356,15 @@ 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.13 +Provides: erlang(erl_nif_version) = 2.14 Provides: bundled(pcre) = 8.33 Obsoletes: erlang-appmon Obsoletes: erlang-docbuilder Obsoletes: erlang-gs Obsoletes: erlang-inviso Obsoletes: erlang-ose -Obsoletes: erlang-percept +# Moved to https://github.com/erlang/percept +Obsoletes: erlang-percept < 20.2.3 Obsoletes: erlang-pman Obsoletes: erlang-toolbar Obsoletes: erlang-tv @@ -496,6 +409,15 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} Examples for some Erlang modules. %endif %{__with_examples} +%package ftp +Summary: FTP client +Requires: %{name}-erts%{?_isa} = %{version}-%{release} +Requires: %{name}-kernel%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description ftp +FTP client. + %package hipe Summary: High Performance Erlang Requires: %{name}-compiler%{?_isa} = %{version}-%{release} @@ -507,21 +429,8 @@ Requires: %{name}-syntax_tools%{?_isa} = %{version}-%{release} %description hipe High Performance Erlang. -%package ic -Summary: IDL compiler -%if %{__with_java} -BuildRequires: java-devel -Requires: javapackages-tools -%endif %{__with_java} -Requires: %{name}-erts%{?_isa} = %{version}-%{release} -Requires: %{name}-kernel%{?_isa} = %{version}-%{release} -Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} - -%description ic -IDL compiler. - %package inets -Summary: A set of services such as a Web server and a ftp client etc +Summary: A set of services such as a Web server and a HTTP client etc Requires: %{name}-erts%{?_isa} = %{version}-%{release} Requires: %{name}-kernel%{?_isa} = %{version}-%{release} Requires: %{name}-mnesia%{?_isa} = %{version}-%{release} @@ -530,7 +439,7 @@ 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 ftp client etc. +A set of services such as a Web server and a HTTP client etc. %if %{__with_java} %package jinterface @@ -603,18 +512,6 @@ 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 -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 Requires: %{name}-erts%{?_isa} = %{version}-%{release} @@ -756,6 +653,15 @@ 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 +Requires: %{name}-erts%{?_isa} = %{version}-%{release} +Requires: %{name}-kernel%{?_isa} = %{version}-%{release} +Requires: %{name}-stdlib%{?_isa} = %{version}-%{release} + +%description tftp +TFTP client. + %package tools Summary: A set of programming tools including a coverage analyzer etc %if %{__with_emacs} @@ -1014,11 +920,6 @@ 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" @@ -1119,124 +1020,6 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_mandir}/man3/compile.* %endif -%files cosEvent -%{_libdir}/erlang/lib/cosEvent-*/ -%if %{with doc} -%{_mandir}/man3/cosEventApp.* -%{_mandir}/man3/CosEventChannelAdmin.* -%{_mandir}/man3/CosEventChannelAdmin_ConsumerAdmin.* -%{_mandir}/man3/CosEventChannelAdmin_EventChannel.* -%{_mandir}/man3/CosEventChannelAdmin_ProxyPullConsumer.* -%{_mandir}/man3/CosEventChannelAdmin_ProxyPullSupplier.* -%{_mandir}/man3/CosEventChannelAdmin_ProxyPushConsumer.* -%{_mandir}/man3/CosEventChannelAdmin_ProxyPushSupplier.* -%{_mandir}/man3/CosEventChannelAdmin_SupplierAdmin.* -%endif - -%files cosEventDomain -%{_libdir}/erlang/lib/cosEventDomain-*/ -%if %{with doc} -%{_mandir}/man3/CosEventDomainAdmin.* -%{_mandir}/man3/CosEventDomainAdmin_EventDomain.* -%{_mandir}/man3/CosEventDomainAdmin_EventDomainFactory.* -%{_mandir}/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} -%{_mandir}/man3/cosFileTransferApp.* -%{_mandir}/man3/CosFileTransfer_Directory.* -%{_mandir}/man3/CosFileTransfer_File.* -%{_mandir}/man3/CosFileTransfer_FileIterator.* -%{_mandir}/man3/CosFileTransfer_FileTransferSession.* -%{_mandir}/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} -%{_mandir}/man3/CosNotification.* -%{_mandir}/man3/CosNotification_AdminPropertiesAdmin.* -%{_mandir}/man3/cosNotificationApp.* -%{_mandir}/man3/CosNotification_QoSAdmin.* -%{_mandir}/man3/CosNotifyChannelAdmin_ConsumerAdmin.* -%{_mandir}/man3/CosNotifyChannelAdmin_EventChannel.* -%{_mandir}/man3/CosNotifyChannelAdmin_EventChannelFactory.* -%{_mandir}/man3/CosNotifyChannelAdmin_ProxyConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_ProxyPullConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_ProxyPullSupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_ProxyPushConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_ProxyPushSupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_ProxySupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_SequenceProxyPullConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_SequenceProxyPullSupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_SequenceProxyPushConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_SequenceProxyPushSupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_StructuredProxyPullConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_StructuredProxyPullSupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_StructuredProxyPushConsumer.* -%{_mandir}/man3/CosNotifyChannelAdmin_StructuredProxyPushSupplier.* -%{_mandir}/man3/CosNotifyChannelAdmin_SupplierAdmin.* -%{_mandir}/man3/CosNotifyComm_NotifyPublish.* -%{_mandir}/man3/CosNotifyComm_NotifySubscribe.* -%{_mandir}/man3/CosNotifyFilter_Filter.* -%{_mandir}/man3/CosNotifyFilter_FilterAdmin.* -%{_mandir}/man3/CosNotifyFilter_FilterFactory.* -%{_mandir}/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} -%{_mandir}/man3/cosProperty.* -%{_mandir}/man3/CosPropertyService_PropertiesIterator.* -%{_mandir}/man3/CosPropertyService_PropertyNamesIterator.* -%{_mandir}/man3/CosPropertyService_PropertySet.* -%{_mandir}/man3/CosPropertyService_PropertySetDef.* -%{_mandir}/man3/CosPropertyService_PropertySetDefFactory.* -%{_mandir}/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} -%{_mandir}/man3/cosTime.* -%{_mandir}/man3/CosTimerEvent_TimerEventHandler.* -%{_mandir}/man3/CosTimerEvent_TimerEventService.* -%{_mandir}/man3/CosTime_TimeService.* -%{_mandir}/man3/CosTime_TIO.* -%{_mandir}/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} -%{_mandir}/man3/cosTransactions.* -%{_mandir}/man3/CosTransactions_Control.* -%{_mandir}/man3/CosTransactions_Coordinator.* -%{_mandir}/man3/CosTransactions_RecoveryCoordinator.* -%{_mandir}/man3/CosTransactions_Resource.* -%{_mandir}/man3/CosTransactions_SubtransactionAwareResource.* -%{_mandir}/man3/CosTransactions_Terminator.* -%{_mandir}/man3/CosTransactions_TransactionFactory.* -%endif - %files crypto %{_libdir}/erlang/lib/crypto-*/ %if %{with doc} @@ -1258,7 +1041,7 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %files dialyzer %{_bindir}/dialyzer # FIXME FIXME FIXME this must be installed properly!!!!!! -#%%{_bindir}/typer +%{_bindir}/typer %{_libdir}/erlang/bin/dialyzer %{_libdir}/erlang/bin/typer %{_libdir}/erlang/erts-*/bin/dialyzer @@ -1394,6 +1177,8 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_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.* @@ -1402,6 +1187,8 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_mandir}/man3/erlang.* %{_mandir}/man3/erts_alloc.* %{_mandir}/man3/init.* +%{_mandir}/man3/persistent_term.* +%{_mandir}/man3/scheduler.* %{_mandir}/man3/zlib.* %endif %{_libdir}/erlang/releases/* @@ -1445,9 +1232,6 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_libdir}/erlang/lib/et-*/examples/ %endif %{__with_wxwidgets} %{_libdir}/erlang/lib/eunit-*/examples/ -%if %{__with_java} -%{_libdir}/erlang/lib/ic-*/examples/ -%endif %{__with_java} %{_libdir}/erlang/lib/inets-*/examples/ %{_libdir}/erlang/lib/kernel-*/examples/ %{_libdir}/erlang/lib/megaco-*/examples/ @@ -1455,7 +1239,6 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %if %{__with_wxwidgets} %{_libdir}/erlang/lib/observer-*/examples/ %endif %{__with_wxwidgets} -%{_libdir}/erlang/lib/orber-*/examples/ %if %{__with_wxwidgets} %{_libdir}/erlang/lib/reltool-*/examples/ %endif %{__with_wxwidgets} @@ -1471,26 +1254,17 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %endif %{__with_wxwidgets} %endif %{__with_examples} -%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 -%if %{__with_java} -# FIXME see also erlang-jinterface -%dir %{_javadir}/%{name}/ -%{_javadir}/%{name}/ic.jar -%endif %{__with_java} +%files ftp +%dir %{_libdir}/erlang/lib/ftp-*/ +%{_libdir}/erlang/lib/ftp-*/ebin +%{_libdir}/erlang/lib/ftp-*/src %if %{with doc} -%{_mandir}/man3/ic.* -%{_mandir}/man3/ic_clib.* -%{_mandir}/man3/ic_c_protocol.* +%{_mandir}/man3/ftp.* %endif +%files hipe +%{_libdir}/erlang/lib/hipe-*/ + %files inets %dir %{_libdir}/erlang/lib/inets-*/ %{_libdir}/erlang/lib/inets-*/ebin @@ -1515,7 +1289,6 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %if %{__with_java} %files jinterface -# FIXME see also erlang-ic %dir %{_javadir}/%{name}/ %{_javadir}/%{name}/OtpErlang.jar %{_libdir}/erlang/lib/jinterface-*/ @@ -1533,6 +1306,7 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_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/error_handler.* @@ -1547,6 +1321,11 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_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.* @@ -1617,34 +1396,6 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_mandir}/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} -%{_mandir}/man3/CosNaming.* -%{_mandir}/man3/CosNaming_BindingIterator.* -%{_mandir}/man3/CosNaming_NamingContext.* -%{_mandir}/man3/CosNaming_NamingContextExt.* -%{_mandir}/man3/Module_Interface.* -%{_mandir}/man3/any.* -%{_mandir}/man3/corba.* -%{_mandir}/man3/corba_object.* -%{_mandir}/man3/fixed.* -%{_mandir}/man3/interceptors.* -%{_mandir}/man3/lname.* -%{_mandir}/man3/lname_component.* -%{_mandir}/man3/orber.* -%{_mandir}/man3/orber_acl.* -%{_mandir}/man3/orber_diagnostics.* -%{_mandir}/man3/orber_ifr.* -%{_mandir}/man3/orber_tc.* -%endif - %files os_mon %{_libdir}/erlang/lib/os_mon-*/ %if %{with doc} @@ -1785,9 +1536,11 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_libdir}/erlang/lib/ssh-*/src %if %{with doc} %{_mandir}/man3/ssh.* -%{_mandir}/man3/ssh_channel.* +%{_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.* @@ -1845,7 +1598,6 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_mandir}/man3/gen_statem.* %{_mandir}/man3/io.* %{_mandir}/man3/io_lib.* -%{_mandir}/man3/lib.* %{_mandir}/man3/lists.* %{_mandir}/man3/log_mf_h.* %{_mandir}/man3/maps.* @@ -1872,6 +1624,7 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_mandir}/man3/sys.* %{_mandir}/man3/timer.* %{_mandir}/man3/unicode.* +%{_mandir}/man3/uri_string.* %{_mandir}/man3/zip.* %{_mandir}/man6/stdlib.* %endif @@ -1894,12 +1647,21 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %{_mandir}/man3/prettypr.* %endif +%files tftp +%dir %{_libdir}/erlang/lib/tftp-*/ +%{_libdir}/erlang/lib/tftp-*/ebin +%{_libdir}/erlang/lib/tftp-*/src +%if %{with doc} +%{_mandir}/man3/tftp.* +%endif + %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 %if %{with doc} %{_mandir}/man3/cover.* %{_mandir}/man3/cprof.* @@ -2182,6 +1944,13 @@ useradd -r -g epmd -d /dev/null -s /sbin/nologin \ %changelog +* 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 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 be12bd8..5f2f83f 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 5b1b9119ce..02535a78bc 100644 +index 1f35cef669..f603eb2946 100644 --- a/erts/etc/common/Makefile.in +++ b/erts/etc/common/Makefile.in -@@ -495,10 +495,6 @@ endif +@@ -496,10 +496,6 @@ endif ifneq ($(INSTALL_TOP_BIN),) $(INSTALL_PROGRAM) $(INSTALL_TOP_BIN) "$(RELEASE_PATH)" endif diff --git a/otp-0003-Do-not-install-C-sources.patch b/otp-0003-Do-not-install-C-sources.patch index 18c53c6..e5c04fd 100644 --- a/otp-0003-Do-not-install-C-sources.patch +++ b/otp-0003-Do-not-install-C-sources.patch @@ -48,7 +48,7 @@ index a4a6c158cc..13658302f5 100644 release_docs_spec: diff --git a/lib/erl_interface/src/Makefile.in b/lib/erl_interface/src/Makefile.in -index 69b5b6003d..ba9a0e74b8 100644 +index 614e7325a9..993167175b 100644 --- a/lib/erl_interface/src/Makefile.in +++ b/lib/erl_interface/src/Makefile.in @@ -842,14 +842,14 @@ ifneq ($(EXE_TARGETS),) @@ -74,23 +74,6 @@ index 69b5b6003d..ba9a0e74b8 100644 release_docs: -diff --git a/lib/ic/c_src/Makefile.in b/lib/ic/c_src/Makefile.in -index c0dad59557..9a19028ff3 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 c37ad4d702..09bf1efe95 100644 --- a/lib/megaco/src/flex/Makefile.in diff --git a/otp-0004-Do-not-install-Java-sources.patch b/otp-0004-Do-not-install-Java-sources.patch index 8948d81..7b8bbd4 100644 --- a/otp-0004-Do-not-install-Java-sources.patch +++ b/otp-0004-Do-not-install-Java-sources.patch @@ -4,21 +4,8 @@ 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 21c38e54b5..eeba2e4eae 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 001acfdd2e..35b2eb3446 100644 +index ee616f3d7e..fdd28e79b3 100644 --- a/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile +++ b/lib/jinterface/java_src/com/ericsson/otp/erlang/Makefile @@ -120,8 +120,6 @@ release release_docs release_tests release_html: 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 50af2de..7a1ca77 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,7 +6,7 @@ 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 4aa8879a91..46dfde42f1 100644 +index 354f8ed26b..12adcfbcf2 100644 --- a/lib/os_mon/doc/src/Makefile +++ b/lib/os_mon/doc/src/Makefile @@ -36,12 +36,17 @@ RELSYSDIR = $(RELEASE_PATH)/lib/$(APPLICATION)-$(VSN) diff --git a/otp-0006-Do-not-install-erlang-sources.patch b/otp-0006-Do-not-install-erlang-sources.patch index 1bd9697..9aecad5 100644 --- a/otp-0006-Do-not-install-erlang-sources.patch +++ b/otp-0006-Do-not-install-erlang-sources.patch @@ -8,10 +8,10 @@ Signed-off-by: Peter Lemenkov Signed-off-by: Hans Ulrich Niedermann diff --git a/erts/preloaded/src/Makefile b/erts/preloaded/src/Makefile -index edb9f35258..6ee4ac2251 100644 +index e1bd5bc295..a4833521d1 100644 --- a/erts/preloaded/src/Makefile +++ b/erts/preloaded/src/Makefile -@@ -90,8 +90,6 @@ $(APP_TARGET): $(APP_SRC) $(ERL_TOP)/erts/vsn.mk +@@ -94,8 +94,6 @@ $(APP_TARGET): $(APP_SRC) $(ERL_TOP)/erts/vsn.mk include $(ERL_TOP)/make/otp_release_targets.mk release_spec: $(APP_TARGET) @@ -34,7 +34,7 @@ index ba459f6cd3..5565126214 100644 $(INSTALL_DATA) $(EXAMPLES) "$(RELSYSDIR)/examples" diff --git a/lib/common_test/src/Makefile b/lib/common_test/src/Makefile -index 9d751996ad..b96a11225c 100644 +index 80eaed70bd..cde0c6823d 100644 --- a/lib/common_test/src/Makefile +++ b/lib/common_test/src/Makefile @@ -152,7 +152,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk @@ -63,10 +63,10 @@ index f015064b39..57f96d2929 100644 $(INSTALL_SCRIPT) $(PROGRAMS) "$(RELEASE_PATH)/test_server" diff --git a/lib/compiler/src/Makefile b/lib/compiler/src/Makefile -index ef6db66ff6..4c9be713aa 100644 +index 2408c76b48..700e236964 100644 --- a/lib/compiler/src/Makefile +++ b/lib/compiler/src/Makefile -@@ -174,8 +174,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -173,8 +173,8 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" @@ -77,104 +77,8 @@ index ef6db66ff6..4c9be713aa 100644 $(INSTALL_DIR) "$(RELSYSDIR)/ebin" $(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin" -diff --git a/lib/cosEvent/src/Makefile b/lib/cosEvent/src/Makefile -index 29d6223005..cb433090d2 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 cdaf9e5f1f..6e4e9b8c52 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 b3967101e9..2678c2a642 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 009c6be4a5..83c2e26057 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 1fdc258a6d..90cf7116b7 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 55d59baea3..f22e2c81db 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 4cc1e487c2..084f0a7230 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 edad0e6b61..00a30c010f 100644 +index 1753ba4f36..2cd09475e8 100644 --- a/lib/crypto/src/Makefile +++ b/lib/crypto/src/Makefile @@ -81,8 +81,6 @@ docs: @@ -213,10 +117,10 @@ index fc08e7ca2f..2464a15c3f 100644 $(INSTALL_DIR) "$(RELSYSDIR)/ebin" $(INSTALL_DATA) $(INSTALL_FILES) "$(RELSYSDIR)/ebin" diff --git a/lib/diameter/src/Makefile b/lib/diameter/src/Makefile -index 3af856f63e..9630a89ba6 100644 +index 98636ed6e2..171846f1e4 100644 --- a/lib/diameter/src/Makefile +++ b/lib/diameter/src/Makefile -@@ -251,11 +251,8 @@ release_spec: opt +@@ -250,11 +250,8 @@ release_spec: opt $(MAKE) $(EXAMPLE_DIRS:%/=release_examples_%) $(TARGET_DIRS:%/=release_src_%): release_src_%: @@ -301,7 +205,7 @@ index 3510d3cc93..9179e9b4c2 100644 $(INSTALL_DIR) "$(RELSYSDIR)/include" $(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include" diff --git a/lib/hipe/cerl/Makefile b/lib/hipe/cerl/Makefile -index 9f50d6bf91..df92b84c0d 100644 +index f653dce36f..7cc5c06528 100644 --- a/lib/hipe/cerl/Makefile +++ b/lib/hipe/cerl/Makefile @@ -102,7 +102,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk @@ -379,7 +283,7 @@ index e5033e444b..74a444b386 100644 $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" diff --git a/lib/hipe/rtl/Makefile b/lib/hipe/rtl/Makefile -index 5abc9ec049..664df3b0c6 100644 +index becdd0b7d8..da8f66343f 100644 --- a/lib/hipe/rtl/Makefile +++ b/lib/hipe/rtl/Makefile @@ -105,7 +105,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk @@ -412,32 +316,6 @@ index 20b1c3bf50..40c642a441 100644 $(INSTALL_DIR) "$(RELSYSDIR)/ebin" $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" -diff --git a/lib/ic/src/Makefile b/lib/ic/src/Makefile -index 6ad2fbeeb7..258517da6f 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 6b99694ea7..530a19ecea 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 a1c1f36b70..f2eb86f7ac 100644 --- a/lib/inets/src/http_client/Makefile @@ -478,10 +356,10 @@ index 1c05d454a5..88f9f62d3b 100644 $(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 eb0098dbee..fff21ff740 100644 +index ec1ae70305..88c084ef58 100644 --- a/lib/inets/src/inets_app/Makefile +++ b/lib/inets/src/inets_app/Makefile -@@ -114,7 +114,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -116,7 +116,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" $(INSTALL_DIR) "$(RELSYSDIR)/src/inets_app" @@ -490,24 +368,11 @@ index eb0098dbee..fff21ff740 100644 $(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 4eaa959cce..198fbf3106 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 5946620f0f..b8944e0a26 100644 +index 57f17defc8..3c8a0a09e7 100644 --- a/lib/kernel/src/Makefile +++ b/lib/kernel/src/Makefile -@@ -204,7 +204,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -225,7 +225,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" @@ -619,10 +484,10 @@ index 7d316df263..60fdefb5d0 100644 $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" diff --git a/lib/observer/src/Makefile b/lib/observer/src/Makefile -index ff2bcbdb99..4973158705 100644 +index f9f239db37..dd061f29f4 100644 --- a/lib/observer/src/Makefile +++ b/lib/observer/src/Makefile -@@ -149,7 +149,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -150,7 +150,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" @@ -643,34 +508,6 @@ index 7ca59495ed..a52ade2fe3 100644 $(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 108663396c..553c9cdd01 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 7fec29a000..a71b9f1227 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 e2f4d5a090..57f21a145b 100644 --- a/lib/os_mon/src/Makefile @@ -751,10 +588,10 @@ index 4bddee4664..c714255548 100644 $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" $(INSTALL_DATA) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin" diff --git a/lib/runtime_tools/src/Makefile b/lib/runtime_tools/src/Makefile -index 5a99c6e240..bdd77fb4f4 100644 +index 76286c5499..d921f9f294 100644 --- a/lib/runtime_tools/src/Makefile +++ b/lib/runtime_tools/src/Makefile -@@ -98,8 +98,6 @@ docs: +@@ -99,8 +99,6 @@ docs: include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt @@ -764,7 +601,7 @@ index 5a99c6e240..bdd77fb4f4 100644 $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" $(INSTALL_DIR) "$(RELSYSDIR)/examples" diff --git a/lib/sasl/src/Makefile b/lib/sasl/src/Makefile -index ac7ee51100..c53f661675 100644 +index 7338bdf016..a280225dad 100644 --- a/lib/sasl/src/Makefile +++ b/lib/sasl/src/Makefile @@ -93,7 +93,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk @@ -841,10 +678,10 @@ index adc2c4858f..89ce954e99 100644 $(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin" # $(INSTALL_DIR) "$(RELSYSDIR)/include" diff --git a/lib/ssh/src/Makefile b/lib/ssh/src/Makefile -index 9e8d80c71f..6ce3dc96ef 100644 +index 6d64a45112..5b1249ca5b 100644 --- a/lib/ssh/src/Makefile +++ b/lib/ssh/src/Makefile -@@ -137,7 +137,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -139,7 +139,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" @@ -854,10 +691,10 @@ index 9e8d80c71f..6ce3dc96ef 100644 $(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \ $(APPUP_TARGET) "$(RELSYSDIR)/ebin" diff --git a/lib/ssl/src/Makefile b/lib/ssl/src/Makefile -index 2e7df9792e..0cd43d3805 100644 +index 8d1341f594..72ab265200 100644 --- a/lib/ssl/src/Makefile +++ b/lib/ssl/src/Makefile -@@ -151,7 +151,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -149,7 +149,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" @@ -867,10 +704,10 @@ index 2e7df9792e..0cd43d3805 100644 $(INSTALL_DATA) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \ $(APPUP_TARGET) "$(RELSYSDIR)/ebin" diff --git a/lib/stdlib/src/Makefile b/lib/stdlib/src/Makefile -index bf836203ec..e86fb6a6d1 100644 +index c95f7637f7..0f601aefb5 100644 --- a/lib/stdlib/src/Makefile +++ b/lib/stdlib/src/Makefile -@@ -212,7 +212,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -214,7 +214,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" @@ -879,7 +716,7 @@ index bf836203ec..e86fb6a6d1 100644 $(INSTALL_DIR) "$(RELSYSDIR)/include" $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include" diff --git a/lib/syntax_tools/src/Makefile b/lib/syntax_tools/src/Makefile -index 8325db45a8..d17fdaa0ec 100644 +index c21d2f49c8..03dbc74ef7 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 @@ -891,11 +728,24 @@ index 8325db45a8..d17fdaa0ec 100644 $(INSTALL_DIR) "$(RELSYSDIR)/include" $(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include" +diff --git a/lib/tftp/src/Makefile b/lib/tftp/src/Makefile +index 602ae845a4..a1f2f09a00 100644 +--- a/lib/tftp/src/Makefile ++++ b/lib/tftp/src/Makefile +@@ -98,7 +98,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) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) \ + $(APPUP_TARGET) "$(RELSYSDIR)/ebin" diff --git a/lib/tools/src/Makefile b/lib/tools/src/Makefile -index 032bd612db..efb0309eb8 100644 +index cc5bee9a8f..7dfa55cb41 100644 --- a/lib/tools/src/Makefile +++ b/lib/tools/src/Makefile -@@ -106,7 +106,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk +@@ -109,7 +109,7 @@ include $(ERL_TOP)/make/otp_release_targets.mk release_spec: opt $(INSTALL_DIR) "$(RELSYSDIR)/src" diff --git a/otp-0007-Add-extra-search-directory.patch b/otp-0007-Add-extra-search-directory.patch new file mode 100644 index 0000000..5551bb0 --- /dev/null +++ b/otp-0007-Add-extra-search-directory.patch @@ -0,0 +1,32 @@ +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 1b4a67ecb7..3602b9e098 100644 +--- a/lib/kernel/src/code_server.erl ++++ b/lib/kernel/src/code_server.erl +@@ -79,11 +79,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-0007-Fix-erl_epmd-port_please-when-using-IPv6.patch b/otp-0007-Fix-erl_epmd-port_please-when-using-IPv6.patch deleted file mode 100644 index 866d325..0000000 --- a/otp-0007-Fix-erl_epmd-port_please-when-using-IPv6.patch +++ /dev/null @@ -1,26 +0,0 @@ -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 7bc9e2ede3..f96bc88913 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-0008-Add-extra-search-directory.patch b/otp-0008-Add-extra-search-directory.patch deleted file mode 100644 index 806418b..0000000 --- a/otp-0008-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 f5a890cb95..f2bb1a1290 100644 ---- a/lib/kernel/src/code_server.erl -+++ b/lib/kernel/src/code_server.erl -@@ -79,11 +79,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-0008-Avoid-forking-sed-to-get-basename.patch b/otp-0008-Avoid-forking-sed-to-get-basename.patch new file mode 100644 index 0000000..f98699a --- /dev/null +++ b/otp-0008-Avoid-forking-sed-to-get-basename.patch @@ -0,0 +1,31 @@ +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 959c099e8f..861b8bcbf1 100644 +--- a/erts/etc/unix/erl.src.src ++++ b/erts/etc/unix/erl.src.src +@@ -21,7 +21,7 @@ + ROOTDIR="%FINAL_ROOTDIR%" + BINDIR=$ROOTDIR/erts-%VSN%/bin + EMU=%EMULATOR%%EMULATOR_NUMBER% +-PROGNAME=`echo $0 | sed 's/.*\///'` ++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-0009-Avoid-forking-sed-to-get-basename.patch b/otp-0009-Avoid-forking-sed-to-get-basename.patch deleted file mode 100644 index f98699a..0000000 --- a/otp-0009-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 959c099e8f..861b8bcbf1 100644 ---- a/erts/etc/unix/erl.src.src -+++ b/erts/etc/unix/erl.src.src -@@ -21,7 +21,7 @@ - ROOTDIR="%FINAL_ROOTDIR%" - BINDIR=$ROOTDIR/erts-%VSN%/bin - EMU=%EMULATOR%%EMULATOR_NUMBER% --PROGNAME=`echo $0 | sed 's/.*\///'` -+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-0009-Load-man-pages-from-system-wide-directory.patch b/otp-0009-Load-man-pages-from-system-wide-directory.patch new file mode 100644 index 0000000..9cc8256 --- /dev/null +++ b/otp-0009-Load-man-pages-from-system-wide-directory.patch @@ -0,0 +1,25 @@ +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 0cb01fd4ef..f4ab21aab4 100644 +--- a/erts/etc/common/erlexec.c ++++ b/erts/etc/common/erlexec.c +@@ -721,8 +721,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-0010-Improve-nodes-querying.patch b/otp-0010-Improve-nodes-querying.patch new file mode 100644 index 0000000..af00198 --- /dev/null +++ b/otp-0010-Improve-nodes-querying.patch @@ -0,0 +1,134 @@ +From: Peter Lemenkov +Date: Wed, 24 Oct 2018 14:58:41 +0200 +Subject: [PATCH] Improve nodes querying + +We've got a few similar stacktraces once. See the following one for +example: + +** Reason for termination == +** {badarg, + [{ets,next,[sys_dist,'rabbitmq-cli-42@host.example.com'],[]}, + {net_kernel,get_nodes,2,[{file,"net_kernel.erl"},{line,1025}]}, + {net_kernel,get_nodes,2,[{file,"net_kernel.erl"},{line,1019}]}, + {net_kernel,get_nodes_info,0,[{file,"net_kernel.erl"},{line,1439}]}, + {rabbit_mgmt_external_stats,cluster_links,0, + [{file,"src/rabbit_mgmt_external_stats.erl"},{line,252}]}, + {rabbit_mgmt_external_stats,emit_node_node_stats,1, + [{file,"src/rabbit_mgmt_external_stats.erl"},{line,366}]}, + {rabbit_mgmt_external_stats,handle_info,2, + [{file,"src/rabbit_mgmt_external_stats.erl"},{line,347}]}, + {gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,615}]}]} + +The problem is that when we're trying to query a list of connected +nodes, we're doing it in the following way: + + Call for the first record in ETS + While not EOF: + Call for the next record in ETS + +What happens, when some Node disconnects during the "not EOF" loop? +We'll get an exception. + +Let's do it differently - query a list of nodes in one shot, and then +get info from each of the nodes in list (w/o extra calls to ets). These +individual calls care of disconnected nodes so everything will be fine +even if a node disconnects. + +Signed-off-by: Peter Lemenkov + +diff --git a/lib/kernel/src/net_kernel.erl b/lib/kernel/src/net_kernel.erl +index a9dc77837e..04025cf35b 100644 +--- a/lib/kernel/src/net_kernel.erl ++++ b/lib/kernel/src/net_kernel.erl +@@ -670,24 +670,16 @@ code_change(_OldVsn, State, _Extra) -> + + terminate(no_network, State) -> + lists:foreach( +- fun({Node, Type}) -> +- case Type of +- normal -> ?nodedown(Node, State); +- _ -> ok +- end +- end, get_up_nodes() ++ [{node(), normal}]); ++ fun(Node) -> ?nodedown(Node, State) ++ end, get_nodes_up_normal() ++ [node()]); + terminate(_Reason, State) -> + lists:foreach( + fun(#listen {listen = Listen,module = Mod}) -> + Mod:close(Listen) + end, State#state.listen), + lists:foreach( +- fun({Node, Type}) -> +- case Type of +- normal -> ?nodedown(Node, State); +- _ -> ok +- end +- end, get_up_nodes() ++ [{node(), normal}]). ++ fun(Node) -> ?nodedown(Node, State) ++ end, get_nodes_up_normal() ++ [node()]). + + + %% ------------------------------------------------------------ +@@ -1139,35 +1131,10 @@ disconnect_pid(Pid, State) -> + %% + %% + %% +-get_nodes(Which) -> +- get_nodes(ets:first(sys_dist), Which). + +-get_nodes('$end_of_table', _) -> +- []; +-get_nodes(Key, Which) -> +- case ets:lookup(sys_dist, Key) of +- [Conn = #connection{state = up}] -> +- [Conn#connection.node | get_nodes(ets:next(sys_dist, Key), +- Which)]; +- [Conn = #connection{}] when Which =:= all -> +- [Conn#connection.node | get_nodes(ets:next(sys_dist, Key), +- Which)]; +- _ -> +- get_nodes(ets:next(sys_dist, Key), Which) +- end. +- +-%% Return a list of all nodes that are 'up'. +-get_up_nodes() -> +- get_up_nodes(ets:first(sys_dist)). +- +-get_up_nodes('$end_of_table') -> []; +-get_up_nodes(Key) -> +- case ets:lookup(sys_dist, Key) of +- [#connection{state=up,node=Node,type=Type}] -> +- [{Node,Type}|get_up_nodes(ets:next(sys_dist, Key))]; +- _ -> +- get_up_nodes(ets:next(sys_dist, Key)) +- end. ++%% Return a list of all nodes that are 'up' and not hidden. ++get_nodes_up_normal() -> ++ ets:select(sys_dist, [{#connection{node = '$1', state = up, type = normal, _ = '_'}, [], ['$1']}]). + + ticker(Kernel, Tick) when is_integer(Tick) -> + process_flag(priority, max), +@@ -1632,15 +1599,14 @@ get_node_info(Node, Key) -> + end. + + get_nodes_info() -> +- get_nodes_info(get_nodes(all), []). +- +-get_nodes_info([Node|Nodes], InfoList) -> +- case get_node_info(Node) of +- {ok, Info} -> get_nodes_info(Nodes, [{Node, Info}|InfoList]); +- _ -> get_nodes_info(Nodes, InfoList) +- end; +-get_nodes_info([], InfoList) -> +- {ok, InfoList}. ++ Nodes = ets:select(sys_dist, [{#connection{node = '$1', _ = '_'}, [], ['$1']}]), ++ {ok, lists:filtermap( ++ fun(Node) -> ++ case get_node_info(Node) of ++ {ok, Info} -> {true, {Node, Info}}; ++ _ -> false ++ end ++ end, Nodes)}. + + %% ------------------------------------------------------------ + %% Misc. functions diff --git a/otp-0010-Load-man-pages-from-system-wide-directory.patch b/otp-0010-Load-man-pages-from-system-wide-directory.patch deleted file mode 100644 index a5eab25..0000000 --- a/otp-0010-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 793cb532b3..2368a2c97b 100644 ---- a/erts/etc/common/erlexec.c -+++ b/erts/etc/common/erlexec.c -@@ -712,8 +712,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-0011-Improve-nodes-querying.patch b/otp-0011-Improve-nodes-querying.patch deleted file mode 100644 index 3fe0dea..0000000 --- a/otp-0011-Improve-nodes-querying.patch +++ /dev/null @@ -1,134 +0,0 @@ -From: Peter Lemenkov -Date: Wed, 24 Oct 2018 14:58:41 +0200 -Subject: [PATCH] Improve nodes querying - -We've got a few similar stacktraces once. See the following one for -example: - -** Reason for termination == -** {badarg, - [{ets,next,[sys_dist,'rabbitmq-cli-42@host.example.com'],[]}, - {net_kernel,get_nodes,2,[{file,"net_kernel.erl"},{line,1025}]}, - {net_kernel,get_nodes,2,[{file,"net_kernel.erl"},{line,1019}]}, - {net_kernel,get_nodes_info,0,[{file,"net_kernel.erl"},{line,1439}]}, - {rabbit_mgmt_external_stats,cluster_links,0, - [{file,"src/rabbit_mgmt_external_stats.erl"},{line,252}]}, - {rabbit_mgmt_external_stats,emit_node_node_stats,1, - [{file,"src/rabbit_mgmt_external_stats.erl"},{line,366}]}, - {rabbit_mgmt_external_stats,handle_info,2, - [{file,"src/rabbit_mgmt_external_stats.erl"},{line,347}]}, - {gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,615}]}]} - -The problem is that when we're trying to query a list of connected -nodes, we're doing it in the following way: - - Call for the first record in ETS - While not EOF: - Call for the next record in ETS - -What happens, when some Node disconnects during the "not EOF" loop? -We'll get an exception. - -Let's do it differently - query a list of nodes in one shot, and then -get info from each of the nodes in list (w/o extra calls to ets). These -individual calls care of disconnected nodes so everything will be fine -even if a node disconnects. - -Signed-off-by: Peter Lemenkov - -diff --git a/lib/kernel/src/net_kernel.erl b/lib/kernel/src/net_kernel.erl -index 7da89dd7cb..f57324b67f 100644 ---- a/lib/kernel/src/net_kernel.erl -+++ b/lib/kernel/src/net_kernel.erl -@@ -609,24 +609,16 @@ code_change(_OldVsn, State, _Extra) -> - - terminate(no_network, State) -> - lists:foreach( -- fun({Node, Type}) -> -- case Type of -- normal -> ?nodedown(Node, State); -- _ -> ok -- end -- end, get_up_nodes() ++ [{node(), normal}]); -+ fun(Node) -> ?nodedown(Node, State) -+ end, get_nodes_up_normal() ++ [node()]); - terminate(_Reason, State) -> - lists:foreach( - fun(#listen {listen = Listen,module = Mod}) -> - Mod:close(Listen) - end, State#state.listen), - lists:foreach( -- fun({Node, Type}) -> -- case Type of -- normal -> ?nodedown(Node, State); -- _ -> ok -- end -- end, get_up_nodes() ++ [{node(), normal}]). -+ fun(Node) -> ?nodedown(Node, State) -+ end, get_nodes_up_normal() ++ [node()]). - - - %% ------------------------------------------------------------ -@@ -1045,35 +1037,10 @@ disconnect_pid(Pid, State) -> - %% - %% - %% --get_nodes(Which) -> -- get_nodes(ets:first(sys_dist), Which). - --get_nodes('$end_of_table', _) -> -- []; --get_nodes(Key, Which) -> -- case ets:lookup(sys_dist, Key) of -- [Conn = #connection{state = up}] -> -- [Conn#connection.node | get_nodes(ets:next(sys_dist, Key), -- Which)]; -- [Conn = #connection{}] when Which =:= all -> -- [Conn#connection.node | get_nodes(ets:next(sys_dist, Key), -- Which)]; -- _ -> -- get_nodes(ets:next(sys_dist, Key), Which) -- end. -- --%% Return a list of all nodes that are 'up'. --get_up_nodes() -> -- get_up_nodes(ets:first(sys_dist)). -- --get_up_nodes('$end_of_table') -> []; --get_up_nodes(Key) -> -- case ets:lookup(sys_dist, Key) of -- [#connection{state=up,node=Node,type=Type}] -> -- [{Node,Type}|get_up_nodes(ets:next(sys_dist, Key))]; -- _ -> -- get_up_nodes(ets:next(sys_dist, Key)) -- end. -+%% Return a list of all nodes that are 'up' and not hidden. -+get_nodes_up_normal() -> -+ ets:select(sys_dist, [{#connection{node = '$1', state = up, type = normal, _ = '_'}, [], ['$1']}]). - - ticker(Kernel, Tick) when is_integer(Tick) -> - process_flag(priority, max), -@@ -1525,15 +1492,14 @@ get_node_info(Node, Key) -> - end. - - get_nodes_info() -> -- get_nodes_info(get_nodes(all), []). -- --get_nodes_info([Node|Nodes], InfoList) -> -- case get_node_info(Node) of -- {ok, Info} -> get_nodes_info(Nodes, [{Node, Info}|InfoList]); -- _ -> get_nodes_info(Nodes, InfoList) -- end; --get_nodes_info([], InfoList) -> -- {ok, InfoList}. -+ Nodes = ets:select(sys_dist, [{#connection{node = '$1', _ = '_'}, [], ['$1']}]), -+ {ok, lists:filtermap( -+ fun(Node) -> -+ case get_node_info(Node) of -+ {ok, Info} -> {true, {Node, Info}}; -+ _ -> false -+ end -+ end, Nodes)}. - - %% ------------------------------------------------------------ - %% Misc. functions diff --git a/sources b/sources index 8808637..8d8a804 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (otp-OTP-20.3.8.18.tar.gz) = 877649835dcf79db7f8940cfbd5db882b10bb5a2652386680b1cecfa2d60fcd2939a9e2cc3710cda49194286e598f752d81e6e6119f40f4e43aef7efbbe5cbd8 +SHA512 (otp-OTP-21.2.4.tar.gz) = 15b5f96a8159be56016124567ce72c72c7e3b727aabcb408dcc054ae4523c15eec79f33e3df2b283e06dc3f6df09da4d154dbf7a278c6e544ef7d2216662b90d