Compare commits

..

9 commits

Author SHA1 Message Date
Peter Lemenkov
fabfd11f00 Erlang ver. 24.3.4.11
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2023-04-21 22:16:10 +02:00
Peter Lemenkov
d1ff095388 Erlang ver. 24.3.4.10
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2023-03-17 18:11:02 +01:00
Peter Lemenkov
8fc002c80a Erlang ver. 24.3.4.9
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2023-02-24 10:27:16 +01:00
Peter Lemenkov
2ac8f30cfd Erlang ver. 24.3.4.8
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2023-01-18 19:05:59 +01:00
Peter Lemenkov
080719004d Erlang ver. 24.3.4.7
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2023-01-04 19:25:43 +01:00
Peter Lemenkov
4d74eaf772 Erlang ver. 24.3.4.6
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2022-10-05 14:30:37 +02:00
Peter Lemenkov
17da9ebdf3 Erlang ver. 24.3.4.5
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2022-09-19 15:29:41 +02:00
Peter Lemenkov
cc985475b1 Erlang ver. 24.3.4.4
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2022-08-29 12:49:30 +02:00
Peter Lemenkov
c4b3287d29 Erlang ver. 24.3.4.3
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
2022-08-18 16:39:30 +02:00
12 changed files with 760 additions and 770 deletions

View file

@ -2,7 +2,7 @@
%{!?need_bootstrap: %global need_bootstrap %{need_bootstrap_set}}
%ifarch %{arm} %{mips} riscv64 %{ix86}
%ifarch %{arm} %{mips} riscv64
# MIPS and RISC-V does not have all dependencies for fop yet.
# For some reason, fop hangs on arm, so for now don't generate docs by
# default
@ -25,12 +25,7 @@
%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
#
# wxWidgets plugin blocks the following ones:
#
@ -68,13 +63,15 @@
Name: erlang
Version: 26.2.5.16
Version: 24.3.4.11
Release: 1%{?dist}
Summary: General-purpose programming language and runtime environment
License: Apache-2.0
License: ASL 2.0
URL: https://www.erlang.org
VCS: git:https://github.com/erlang/otp.git
%if ! (0%{?rhel} && 0%{?rhel} <= 6)
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
@ -103,16 +100,14 @@ Patch2: otp-0002-Remove-rpath.patch
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-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
Patch6: otp-0006-Do-not-install-erlang-sources.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
# end of autogenerated patch tag list
BuildRequires: gcc
BuildRequires: gcc-c++
# For gdb-tools
BuildRequires: gdb
BuildRequires: flex
BuildRequires: make
@ -123,11 +118,13 @@ BuildRequires: erlang
%endif
%endif
%if ! (0%{?rhel} && 0%{?rhel} <= 6)
# for <systemd/sd-daemon.h>
BuildRequires: systemd-devel
BuildRequires: systemd
%{?systemd_requires}
Requires: systemd
%endif
BuildRequires: autoconf
BuildRequires: automake
#BuildRequires: erlang-rpm-macros
@ -177,7 +174,6 @@ 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}-src%{?_isa} = %{version}-%{release}
Requires: %{name}-ssh%{?_isa} = %{version}-%{release}
Requires: %{name}-ssl%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@ -242,10 +238,10 @@ A byte code compiler for Erlang which produces highly compact code.
%package crypto
Summary: Cryptographical support
BuildRequires: pkgconfig(openssl)
%if 0%{?fedora} > 40
BuildRequires: openssl-devel-engine
%endif
#BuildRequires: pkgconfig(openssl)
# FIXME there is something wrong with OpenSSL 3.0 support in Erlang right now.
# We have to fallback to OpenSSL1 explicitly.
BuildRequires: openssl1.1-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@ -352,6 +348,7 @@ 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,10 +357,9 @@ 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)
# FIXME has to be 2.16
Provides: erlang(erl_nif_version) = 2.15
Provides: bundled(pcre) = 8.33
Obsoletes: erlang-appmon
Obsoletes: erlang-docbuilder
Obsoletes: erlang-gs
@ -415,7 +411,7 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
%description examples
Examples for some Erlang modules.
%endif # __with_examples
%endif %{__with_examples}
%package ftp
Summary: FTP client
@ -426,14 +422,6 @@ 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.
%package inets
Summary: A set of services such as a Web server and a HTTP client etc
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
@ -602,50 +590,6 @@ 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
Requires: %{name}-crypto%{?_isa} = %{version}-%{release}
@ -704,7 +648,7 @@ Summary: A set of programming tools including a coverage analyzer etc
%if %{__with_emacs}
BuildRequires: emacs
BuildRequires: emacs-el
%endif # __with_emacs
%endif %{__with_emacs}
Requires: %{name}-compiler%{?_isa} = %{version}-%{release}
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-inets%{?_isa} = %{version}-%{release}
@ -715,7 +659,7 @@ Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
Requires: emacs-filesystem
Obsoletes: emacs-erlang
Obsoletes: emacs-erlang-el
%endif # __with_emacs
%endif %{__with_emacs}
%description tools
@ -724,7 +668,7 @@ A set of programming tools including a coverage analyzer etc.
%if %{__with_wxwidgets}
%package wx
Summary: A library for wxWidgets support in Erlang
BuildRequires: wxGTK-devel
BuildRequires: wxGTK3-devel
Requires: %{name}-erts%{?_isa} = %{version}-%{release}
Requires: %{name}-kernel%{?_isa} = %{version}-%{release}
Requires: %{name}-stdlib%{?_isa} = %{version}-%{release}
@ -753,11 +697,6 @@ Provides support for XML 1.0.
# remove shipped zlib sources
#rm -f erts/emulator/zlib/*.[ch]
# Create a sysusers.d config file
cat >erlang.sysusers.conf <<EOF
u epmd - 'Erlang Port Mapper Daemon' /dev/null -
EOF
%build
# Reconfigure everything to apply changes to the autotools templates
@ -785,7 +724,7 @@ CFLAGS="${ERL_FLAGS}" CXXFLAGS="${ERL_FLAGS}" %configure --enable-shared-zlib --
--without-jinterface \
%endif # __with_java
%if %{__with_wxwidgets}
--with-wx-config=/usr/bin/wx-config
--with-wx-config=/usr/bin/wx-config-3.0
%else
--without-common_test \
--without-debugger \
@ -816,9 +755,9 @@ cp lib/tools/emacs/*.el emacs-erlang/
pushd emacs-erlang
%{_emacs_bytecompile} *.el
popd
%endif # __with_emacs
%endif %{__with_emacs}
%make_build
make
%if %{with doc}
# should use FOP_OPTS after #832323 is resolved
@ -846,7 +785,7 @@ 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
%endif %{__with_emacs}
make DESTDIR=$RPM_BUILD_ROOT install
@ -864,7 +803,7 @@ find $RPM_BUILD_ROOT%{_libdir}/erlang/lib/kernel-*/examples/uds_dist -type d -pe
%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
@ -943,27 +882,16 @@ ln -s "${jinterface_lib_dir}priv/OtpErlang.jar" "$RPM_BUILD_ROOT%{_javadir}/%{na
%endif # __with_java
# systemd-related stuff
%if ! (0%{?rhel} && 0%{?rhel} <= 6)
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"
@ -979,10 +907,6 @@ done
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)"
@ -993,6 +917,11 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
# https://github.com/erlang/otp/wiki/Running-tests
%pre erts
getent group epmd >/dev/null || groupadd -r epmd
getent passwd epmd >/dev/null || \
useradd -r -g epmd -d /dev/null -s /sbin/nologin \
-c "Erlang Port Mapper Daemon" epmd 2>/dev/null || :
%files
@ -1071,14 +1000,14 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%files dialyzer
%{_bindir}/dialyzer
# FIXME FIXME FIXME this must be installed properly!!!!!!
%{_bindir}/erlang-typer
%{_bindir}/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}/man1/typer.*
%{_mandir}/man3/dialyzer.*
%endif
%endif # __with_wxwidgets
@ -1232,11 +1161,12 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%endif
%{_libdir}/erlang/releases/*
%{_libdir}/erlang/usr/
%if ! (0%{?rhel} && 0%{?rhel} <= 6)
%{_unitdir}/epmd.service
%{_unitdir}/epmd.socket
%{_unitdir}/epmd@.service
%{_unitdir}/epmd@.socket
%{_sysusersdir}/erlang.conf
%endif
%if %{__with_wxwidgets}
%files et
@ -1292,7 +1222,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%if %{__with_wxwidgets}
%{_libdir}/erlang/lib/wx-*/examples/
%endif # __with_wxwidgets
%endif # __with_examples
%endif %{__with_examples}
%files ftp
%dir %{_libdir}/erlang/lib/ftp-*/
@ -1302,9 +1232,6 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%{_mandir}/man3/ftp.*
%endif
%files gdb-tools
%{_libdir}/gdb/jit-reader.so
%files inets
%dir %{_libdir}/erlang/lib/inets-*/
%{_libdir}/erlang/lib/inets-*/ebin
@ -1376,6 +1303,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%{_mandir}/man3/pg.*
%{_mandir}/man3/rpc.*
%{_mandir}/man3/seq_trace.*
%{_mandir}/man3/user.*
%{_mandir}/man3/wrap_log_reader.*
%{_mandir}/man3/zlib_stub.*
%{_mandir}/man4/app.*
@ -1481,6 +1409,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%if %{with doc}
%{_mandir}/man3/dbg.*
%{_mandir}/man3/dyntrace.*
%{_mandir}/man3/erts_alloc_config.*
%{_mandir}/man3/msacc.*
%{_mandir}/man3/system_information.*
%{_mandir}/man6/runtime_tools.*
@ -1564,13 +1493,6 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%{_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
%endif
%files ssh
%dir %{_libdir}/erlang/lib/ssh-*/
%{_libdir}/erlang/lib/ssh-*/ebin
@ -1608,7 +1530,6 @@ 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.*
@ -1619,14 +1540,11 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%{_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.*
@ -1653,7 +1571,6 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%{_mandir}/man3/ms_transform.*
%{_mandir}/man3/orddict.*
%{_mandir}/man3/ordsets.*
%{_mandir}/man3/peer.*
%{_mandir}/man3/pool.*
%{_mandir}/man3/proc_lib.*
%{_mandir}/man3/proplists.*
@ -1705,6 +1622,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%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
@ -1727,7 +1645,7 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%{_emacs_sitelispdir}/erlang/*.el
%{_emacs_sitelispdir}/erlang/*.elc
%{_emacs_sitestartdir}/erlang-init.el
%endif # __with_emacs
%endif %{__with_emacs}
%if %{__with_wxwidgets}
%files wx
@ -1992,171 +1910,32 @@ ERL_TOP=${ERL_TOP} make TARGET=${TARGET} release_tests
%changelog
* Wed Sep 10 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.15-1
- Ver. 26.2.5.15
* Fri Apr 21 2023 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.11-1
- Ver. 24.3.4.11
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 26.2.5.14-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Fri Mar 17 2023 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.10-1
- Ver. 24.3.4.10
* Thu Jul 17 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.14-1
- Ver. 26.2.5.14
* Fri Feb 24 2023 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.9-1
- Ver. 24.3.4.9
* Fri Jun 20 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.13-3
- Add GDB tools
* Wed Jan 18 2023 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.8-1
- Ver. 24.3.4.8
* Wed Jun 18 2025 Benjamin A. Beasley <code@musicinmybrain.net> - 26.2.5.13-2
- Rename typer (in /usr/bin) to erlang-typer; fixes RHBZ#2359567
* Wed Jan 4 2023 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.7-1
- Ver. 24.3.4.7
* Mon Jun 16 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.13-1
- Ver. 26.2.5.13
* Wed Oct 5 2022 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.6-1
- Ver. 24.3.4.6
* Thu May 8 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.12-1
- Ver. 26.2.5.12
* Mon Sep 19 2022 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.5-1
- Ver. 24.3.4.5
* Wed Apr 16 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.11-1
- Ver. 26.2.5.11
* Mon Aug 29 2022 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.4-1
- Ver. 24.3.4.4
* Fri Mar 28 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.10-1
- Ver. 26.2.5.10
* Mon Mar 10 2025 Zbigniew Jedrzejewski-Szmek <zbyszek@in.waw.pl> - 26.2.5.9-2
- Add sysusers.d config file to allow rpm to create users/groups automatically
* Thu Feb 13 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.8-1
- Ver. 26.2.5.8
* Tue Feb 11 2025 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.7-1
- Ver. 26.2.5.7
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 26.2.5.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sat Dec 7 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.6-1
- Ver. 26.2.5.6
* Fri Nov 1 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.5-1
- Ver. 26.2.5.5
* Wed Oct 9 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.4-1
- Ver. 26.2.5.4
* Thu Sep 5 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.3-1
- Ver. 26.2.5.3
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 26.2.5.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Wed Jul 10 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.2-1
- Ver. 26.2.5.2
* Wed Jun 26 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5.1-1
- Ver. 26.2.5.1
* Sat May 4 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.5-1
- Ver. 26.2.5
* Sat Apr 13 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.4-1
- Ver. 26.2.4
* Mon Feb 12 2024 Peter Lemenkov <lemenkov@gmail.com> - 26.2.2-1
- Ver. 26.2.2
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 26.2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 26.2.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Dec 18 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.2.1-1
- Ver. 26.2.1
* Wed Dec 13 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.2-1
- Ver. 26.2
* Fri Oct 13 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.1.2-1
- Ver. 26.1.2
* Fri Sep 29 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.1.1-1
- Ver. 26.1.1
* Wed Sep 20 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.1-1
- Ver. 26.1
* Tue Aug 8 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.0.2-3
- Reenable OpenSSL 3
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 26.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jul 1 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.0.2-1
- Ver. 26.0.2
* Fri Jun 9 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.0.1-1
- Ver. 26.0.1
* Sat May 20 2023 Peter Lemenkov <lemenkov@gmail.com> - 26.0-1
- Ver. 26.0
* Sat May 6 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.3.2-1
- Ver. 25.3.2
* Thu Apr 27 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.3.1-1
- Ver. 25.3.1
* Wed Mar 8 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.3-1
- Ver. 25.3
* Fri Feb 17 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.2.3-1
- Ver. 25.2.3
* Mon Jan 30 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.2.2-1
- Ver. 25.2.2
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 25.2.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Wed Jan 18 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.2.1-1
- Ver. 25.2.1
* Fri Jan 6 2023 Peter Lemenkov <lemenkov@gmail.com> - 25.2-3
- Fix deps
* Wed Jan 4 2023 Peter Lemenkov <lemenkov@gmail.com> - 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 <lemenkov@gmail.com> - 25.2-1
- Ver. 25.2
* Sun Nov 27 2022 Mamoru TASAKA <mtasaka@fedoraproject.org> - 25.1.2-3
- Rebuild due to wxGLCanvas ABI change
* Thu Nov 24 2022 Florian Weimer <fweimer@redhat.com> - 25.1.2-2
- Fix C99 compatibility issues in configure checks
* Tue Oct 25 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.1.2-1
- Ver. 25.1.2
* Mon Oct 3 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.1.1-1
- Ver. 25.1.1
* Wed Sep 21 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.1-1
- Ver. 25.1
* Thu Aug 18 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.0.4-1
- Ver. 25.0.4
* Thu Jul 28 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.0.3-3
- Rebuild with new wxWidgets
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 25.0.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jul 16 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.0.3-1
- Ver. 25.0.3
* Tue Jul 12 2022 Peter Lemenkov <lemenkov@gmail.com> - 25.0.2-1
- Ver. 25.0.2
* Thu Aug 18 2022 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.3-1
- Ver. 24.3.4.3
* Thu Jun 23 2022 Peter Lemenkov <lemenkov@gmail.com> - 24.3.4.2-1
- Ver. 24.3.4.2

View file

@ -6,10 +6,10 @@ Subject: [PATCH] Do not format man-pages and do not install miscellaneous
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/erts/etc/common/Makefile.in b/erts/etc/common/Makefile.in
index 42af9c87dc..c017e0a4ed 100644
index e5ff959078..7ceef28103 100644
--- a/erts/etc/common/Makefile.in
+++ b/erts/etc/common/Makefile.in
@@ -552,10 +552,6 @@ endif
@@ -550,10 +550,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 7437e073e0..009ffea706 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 .
@@ -142,14 +142,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

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Remove rpath
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/crypto/c_src/Makefile.in b/lib/crypto/c_src/Makefile.in
index aedc9e7a13..b27c2aa01b 100644
index 4478ed7d9c..3224c705e6 100644
--- a/lib/crypto/c_src/Makefile.in
+++ b/lib/crypto/c_src/Makefile.in
@@ -147,7 +147,7 @@ endif
@@ -145,7 +145,7 @@ endif
endif
ifeq ($(DYNAMIC_OR_WIN_CRYPTO_LIB),yes)

View file

@ -14,10 +14,10 @@ https://bugzilla.redhat.com/818419
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/asn1/c_src/Makefile b/lib/asn1/c_src/Makefile
index 82a6b6e87a..5f2fe8ba7d 100644
index 8fb3360f83..5fb080f206 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
@@ -136,8 +136,6 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/priv/lib"
$(INSTALL_PROGRAM) $(NIF_SHARED_OBJ_FILE) "$(RELSYSDIR)/priv/lib"
@ -27,10 +27,10 @@ index 82a6b6e87a..5f2fe8ba7d 100644
release_docs_spec:
diff --git a/lib/erl_interface/src/Makefile.in b/lib/erl_interface/src/Makefile.in
index fa1ea3cd39..b977b6afe5 100644
index 92459f6223..d2c7b7f765 100644
--- a/lib/erl_interface/src/Makefile.in
+++ b/lib/erl_interface/src/Makefile.in
@@ -715,13 +715,11 @@ ifeq (@DYNAMIC_LIB@, yes)
@@ -709,13 +709,11 @@ ifeq (@DYNAMIC_LIB@, yes)
endif
$(INSTALL_PROGRAM) $(EXE_TARGETS) "$(RELSYSDIR)/bin"
$(INSTALL_DATA) $(EXTRA) "$(RELSYSDIR)/src"
@ -50,7 +50,7 @@ index fa1ea3cd39..b977b6afe5 100644
release_docs:
diff --git a/lib/megaco/src/flex/Makefile.in b/lib/megaco/src/flex/Makefile.in
index 3649e2c392..d8c5c68b99 100644
index cd409fa54f..c65e817385 100644
--- a/lib/megaco/src/flex/Makefile.in
+++ b/lib/megaco/src/flex/Makefile.in
@@ -251,7 +251,7 @@ release_spec: opt
@ -91,3 +91,16 @@ index 27b156a2c9..f11ff303b6 100644
$(INSTALL_DIR) "$(RELSYSDIR)/priv/bin"
$(INSTALL_PROGRAM) $(TARGET_FILES) "$(RELSYSDIR)/priv/bin"
diff --git a/lib/tools/c_src/Makefile.in b/lib/tools/c_src/Makefile.in
index 878aa2cde6..0153885e88 100644
--- a/lib/tools/c_src/Makefile.in
+++ b/lib/tools/c_src/Makefile.in
@@ -170,8 +170,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"

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Do not install Java sources
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
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 e42fd9468d..35deacbcf3 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:

View file

@ -28,7 +28,7 @@ index 8e3882bfdc..ea999cf9c7 100644
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 48a896265b..afb67c1793 100644
--- a/lib/os_mon/src/Makefile
+++ b/lib/os_mon/src/Makefile
@@ -34,7 +34,13 @@ RELSYSDIR = $(RELEASE_PATH)/lib/os_mon-$(VSN)

View file

@ -0,0 +1,662 @@
From: Hans Ulrich Niedermann <hun@n-dimensional.de>
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 <lemenkov@gmail.com>
Signed-off-by: Hans Ulrich Niedermann <hun@n-dimensional.de>
diff --git a/erts/preloaded/src/Makefile b/erts/preloaded/src/Makefile
index 521e5b6f67..2d818d8f75 100644
--- a/erts/preloaded/src/Makefile
+++ b/erts/preloaded/src/Makefile
@@ -121,8 +121,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 60a2020dbf..406cc08208 100644
--- a/lib/asn1/src/Makefile
+++ b/lib/asn1/src/Makefile
@@ -151,7 +151,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 7d7b5ed203..9151e4097b 100644
--- a/lib/common_test/src/Makefile
+++ b/lib/common_test/src/Makefile
@@ -157,7 +157,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/common_test/test_server/Makefile b/lib/common_test/test_server/Makefile
index f015064b39..57f96d2929 100644
--- a/lib/common_test/test_server/Makefile
+++ b/lib/common_test/test_server/Makefile
@@ -86,9 +86,9 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_tests_spec: opt
$(INSTALL_DIR) "$(RELEASE_PATH)/test_server"
- $(INSTALL_DATA) $(TS_ERL_FILES) $(TS_HRL_FILES) \
+ $(INSTALL_DATA) $(TS_HRL_FILES) \
$(TS_TARGET_FILES) \
- $(AUTOCONF_FILES) $(CONFIG) \
+ $(CONFIG) \
"$(RELEASE_PATH)/test_server"
$(INSTALL_SCRIPT) $(PROGRAMS) "$(RELEASE_PATH)/test_server"
diff --git a/lib/compiler/src/Makefile b/lib/compiler/src/Makefile
index f050e134f8..653695aa12 100644
--- a/lib/compiler/src/Makefile
+++ b/lib/compiler/src/Makefile
@@ -182,8 +182,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/crypto/src/Makefile b/lib/crypto/src/Makefile
index fea32dc4e3..183c982ff6 100644
--- a/lib/crypto/src/Makefile
+++ b/lib/crypto/src/Makefile
@@ -81,8 +81,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 118cb6b758..86722d8767 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 5f2c24c3c0..99eddc96e3 100644
--- a/lib/dialyzer/src/Makefile
+++ b/lib/dialyzer/src/Makefile
@@ -165,7 +165,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 348cc350e1..9d87858def 100644
--- a/lib/diameter/src/Makefile
+++ b/lib/diameter/src/Makefile
@@ -260,11 +260,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 8acef15248..ead1fd3b0f 100644
--- a/lib/edoc/src/Makefile
+++ b/lib/edoc/src/Makefile
@@ -87,7 +87,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 b79a537424..d0b231e5fc 100644
--- a/lib/eldap/src/Makefile
+++ b/lib/eldap/src/Makefile
@@ -98,13 +98,9 @@ include $(ERL_TOP)/make/otp_release_targets.mk
release_spec: opt
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
- $(INSTALL_DATA) $(ASN1_HRL) $(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_DATA) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) "$(RELSYSDIR)/ebin"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
- $(INSTALL_DATA) $(EXTERNAL_HRL_FILES) "$(RELSYSDIR)/include"
+ $(INSTALL_DATA) $(HRL_FILES) "$(RELSYSDIR)/include"
release_docs_spec:
diff --git a/lib/erl_docgen/src/Makefile b/lib/erl_docgen/src/Makefile
index e4339dcb1f..f563d6fd5b 100644
--- a/lib/erl_docgen/src/Makefile
+++ b/lib/erl_docgen/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"
diff --git a/lib/et/src/Makefile b/lib/et/src/Makefile
index b6347d8b6d..a695d2cc2d 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 32f75202a0..a89fa7f2d2 100644
--- a/lib/eunit/src/Makefile
+++ b/lib/eunit/src/Makefile
@@ -121,7 +121,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/inets/src/http_client/Makefile b/lib/inets/src/http_client/Makefile
index a1c1f36b70..f2eb86f7ac 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 8248e37c44..1f1b23184b 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 f66a446d40..2858ae7267 100644
--- a/lib/inets/src/http_server/Makefile
+++ b/lib/inets/src/http_server/Makefile
@@ -134,7 +134,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 d85df269ce..0193796bc1 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
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/kernel/src/Makefile b/lib/kernel/src/Makefile
index b2299188eb..bee47366f1 100644
--- a/lib/kernel/src/Makefile
+++ b/lib/kernel/src/Makefile
@@ -229,7 +229,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 ab45548099..5c7a7f0be9 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 9e33fe3ae5..1db69567bb 100644
--- a/lib/megaco/src/binary/Makefile
+++ b/lib/megaco/src/binary/Makefile
@@ -154,7 +154,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 869b516b05..fa7d774d84 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 c65e817385..3bc4dea207 100644
--- a/lib/megaco/src/flex/Makefile.in
+++ b/lib/megaco/src/flex/Makefile.in
@@ -248,7 +248,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 d07db3fa4b..7f421d24cc 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 bb5f80403b..a78a4551a8 100644
--- a/lib/megaco/src/text/Makefile
+++ b/lib/megaco/src/text/Makefile
@@ -133,7 +133,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 028a63e98e..9e11e9bfb2 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 dce7a359d3..7051c965b9 100644
--- a/lib/mnesia/src/Makefile
+++ b/lib/mnesia/src/Makefile
@@ -135,7 +135,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 4280557d45..eb43ecec23 100644
--- a/lib/observer/src/Makefile
+++ b/lib/observer/src/Makefile
@@ -151,7 +151,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 7ca59495ed..a52ade2fe3 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/os_mon/src/Makefile b/lib/os_mon/src/Makefile
index afb67c1793..ec6acf1fce 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/parsetools/src/Makefile b/lib/parsetools/src/Makefile
index ba206904ec..281cc8657c 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/public_key/asn1/Makefile b/lib/public_key/asn1/Makefile
index 1fef168463..e5411b903b 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 e27f02eea9..dec54a8414 100644
--- a/lib/public_key/src/Makefile
+++ b/lib/public_key/src/Makefile
@@ -110,8 +110,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 4bddee4664..c714255548 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 76286c5499..d921f9f294 100644
--- a/lib/runtime_tools/src/Makefile
+++ b/lib/runtime_tools/src/Makefile
@@ -99,8 +99,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 16a42caf11..674364281d 100644
--- a/lib/sasl/src/Makefile
+++ b/lib/sasl/src/Makefile
@@ -94,7 +94,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 1da0f33c9d..9d54271816 100644
--- a/lib/snmp/src/agent/Makefile
+++ b/lib/snmp/src/agent/Makefile
@@ -151,7 +151,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) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) $(APP_TARGET) $(APPUP_TARGET) \
"$(RELSYSDIR)/ebin"
diff --git a/lib/snmp/src/app/Makefile b/lib/snmp/src/app/Makefile
index 02800462a4..133f7c3b59 100644
--- a/lib/snmp/src/app/Makefile
+++ b/lib/snmp/src/app/Makefile
@@ -144,7 +144,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 bbd7f99378..19d1f83dda 100644
--- a/lib/snmp/src/compile/Makefile
+++ b/lib/snmp/src/compile/Makefile
@@ -137,7 +137,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 6f5f5d01f9..d6bc5e3e06 100644
--- a/lib/snmp/src/manager/Makefile
+++ b/lib/snmp/src/manager/Makefile
@@ -135,7 +135,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) $(BEHAVIOUR_TARGET_FILES) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
# $(INSTALL_DIR) "$(RELSYSDIR)/include"
diff --git a/lib/snmp/src/misc/Makefile b/lib/snmp/src/misc/Makefile
index eca2d949d2..4c234caf88 100644
--- a/lib/snmp/src/misc/Makefile
+++ b/lib/snmp/src/misc/Makefile
@@ -125,7 +125,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 cc3cfe9e96..9f3cd694f5 100644
--- a/lib/ssh/src/Makefile
+++ b/lib/ssh/src/Makefile
@@ -182,7 +182,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 1e55bb497d..1cf3cbf5ee 100644
--- a/lib/ssl/src/Makefile
+++ b/lib/ssl/src/Makefile
@@ -211,7 +211,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 509648cb2b..0ffc2c6ed1 100644
--- a/lib/stdlib/src/Makefile
+++ b/lib/stdlib/src/Makefile
@@ -221,7 +221,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 af6a472f3d..6796810ac2 100644
--- a/lib/syntax_tools/src/Makefile
+++ b/lib/syntax_tools/src/Makefile
@@ -96,8 +96,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/tftp/src/Makefile b/lib/tftp/src/Makefile
index 4ece9ffe28..da95babcea 100644
--- a/lib/tftp/src/Makefile
+++ b/lib/tftp/src/Makefile
@@ -101,7 +101,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 cc5bee9a8f..7dfa55cb41 100644
--- a/lib/tools/src/Makefile
+++ b/lib/tools/src/Makefile
@@ -109,7 +109,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/wx/src/Makefile b/lib/wx/src/Makefile
index 7e2eb38f2f..939d03670d 100644
--- a/lib/wx/src/Makefile
+++ b/lib/wx/src/Makefile
@@ -121,9 +121,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 51d9190797..1ab65bd2ed 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"

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Add extra search directory
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/lib/kernel/src/code_server.erl b/lib/kernel/src/code_server.erl
index 7327636751..2e92e77598 100644
index 3ab50cafe0..f510535714 100644
--- a/lib/kernel/src/code_server.erl
+++ b/lib/kernel/src/code_server.erl
@@ -90,11 +90,17 @@ init(Ref, Parent, [Root,Mode]) ->
@@ -79,11 +79,17 @@ init(Ref, Parent, [Root,Mode]) ->
IPath =
case Mode of
interactive ->

View file

@ -4,14 +4,14 @@ 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
index 0983132ac1..6b55e8f0f3 100644
--- a/erts/etc/unix/erl.src.src
+++ b/erts/etc/unix/erl.src.src
@@ -49,7 +49,7 @@ else
@@ -26,7 +26,7 @@ else
fi
BINDIR="$ROOTDIR/erts-%VSN%/bin"
BINDIR=$ROOTDIR/erts-%VSN%/bin
EMU=%EMULATOR%%EMULATOR_NUMBER%
-PROGNAME=`basename "$0"`
-PROGNAME=`echo $0 | sed 's/.*\///'`
+PROGNAME=${0##*/}
export EMU
export ROOTDIR

View file

@ -1,464 +0,0 @@
From: Peter Lemenkov <lemenkov@gmail.com>
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 <lemenkov@gmail.com>
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 <gdb/jit-reader.h>
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <string.h>
+
+/* 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 = &regfree;
+ prev_rbp->defined = 1;
+ prev_rbp->size = sizeof(char*);
+ prev_rsp->free = &regfree;
+ prev_rsp->defined = 1;
+ prev_rsp->size = sizeof(char*);
+ prev_rip->free = &regfree;
+ 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 $@ $^

View file

@ -7,10 +7,10 @@ Patch allows one to use standard man path with erl -man command.
as required by Debian policy.)
diff --git a/erts/etc/common/erlexec.c b/erts/etc/common/erlexec.c
index 888df87e35..14272f06c6 100644
index bda9a94a95..e14fdc49b6 100644
--- a/erts/etc/common/erlexec.c
+++ b/erts/etc/common/erlexec.c
@@ -716,8 +716,10 @@ int main(int argc, char **argv)
@@ -724,8 +724,10 @@ int main(int argc, char **argv)
error("-man not supported on Windows");
#else
argv[i] = "man";

View file

@ -1 +1 @@
SHA512 (otp-OTP-26.2.5.16.tar.gz) = 4e973be7e8ccad196d59759108a521535b0f046268eb0406f789a50f411fa27c9c11fcfb61a7218605bf1b32921bb52c52fc7c99917e1acfc0d3ed09437129b2
SHA512 (otp-OTP-24.3.4.11.tar.gz) = 80736505e9a436ff4ea5635738b90ae094feb615892cc0af29cc6514593629723eeb22747b1f0ff5cda1f8e9d2e9401e9e83386221e14feeae35c29a5377e26d