File 3862-otp-Make-sure-filelib-find_source-finds-all-sources.patch of Package erlang
From a7ecc5be47bfc09475c17dbd760f96e5669ba192 Mon Sep 17 00:00:00 2001
From: Lukas Larsson <lukas@erlang.org>
Date: Mon, 31 Jan 2022 15:40:56 +0100
Subject: [PATCH 2/2] otp: Make sure filelib:find_source finds all sources
Adjust eunit and public_key to place sources in the correct
folders during a release so that filelib:find_source can
find them.
Also adds a test that makes sure that we don't break this in
the future.
Closes #5655
---
lib/eunit/src/Makefile | 2 +-
lib/public_key/.gitignore | 8 +++++---
lib/public_key/asn1/Makefile | 31 ++++++++++++++++--------------
lib/stdlib/test/filelib_SUITE.erl | 32 +++++++++++++++++++++++++++----
4 files changed, 51 insertions(+), 22 deletions(-)
diff --git a/lib/eunit/src/Makefile b/lib/eunit/src/Makefile
index 4ec5af6988..f4eaf6807a 100644
--- a/lib/eunit/src/Makefile
+++ b/lib/eunit/src/Makefile
@@ -121,7 +121,7 @@ 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) $(PARSE_TRANSFORM) $(SOURCES) $(BEHAVIOUR_SOURCES) "$(RELSYSDIR)/src"
$(INSTALL_DATA) $(INTERNAL_HRL_FILES) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/include"
$(INSTALL_DATA) $(INCLUDE_DELIVERABLES) "$(RELSYSDIR)/include"
diff --git a/lib/public_key/asn1/Makefile b/lib/public_key/asn1/Makefile
index 02903a2d84..c5f539519e 100644
--- a/lib/public_key/asn1/Makefile
+++ b/lib/public_key/asn1/Makefile
@@ -18,6 +18,9 @@
# %CopyrightEnd%
#
+EGEN = ../src
+ESRC = ../src
+
include $(ERL_TOP)/make/target.mk
include $(ERL_TOP)/make/$(TARGET)/otp.mk
@@ -39,28 +42,26 @@ RELSYSDIR = $(RELEASE_PATH)/lib/public_key-$(VSN)
.SUFFIXES: .asn1
.PRECIOUS: %.erl
+INCLUDE = ../include
+EBIN = ../ebin
+
ASN_TOP = OTP-PUB-KEY PKCS-FRAME
ASN_MODULES = PKIX1Explicit88 PKIX1Implicit88 PKIX1Algorithms88 \
PKIXAttributeCertificate PKCS-1 PKCS-3 PKCS-7 PKCS-8 PKCS-10 PKCS5v2-0 OTP-PKIX \
InformationFramework RFC5639
ASN_ASNS = $(ASN_MODULES:%=%.asn1)
-ASN_ERLS = $(ASN_TOP:%=%.erl)
+ASN_ERLS = $(ASN_TOP:%=$(ESRC)/%.erl)
ASN_HRLS = $(ASN_TOP:%=%.hrl)
ASN_CONFIGS = OTP-PUB-KEY.asn1config
ASN_DBS = $(ASN_MODULES:%=%.asn1db) OTP-PUB-KEY.asn1db
ASN_TABLES = $(ASN_MODULES:%=%.table)
-GEN_MODULES =
-GEN_ERLS = $(GEN_MODULES:%=%.erl)
ERL_MODULES = $(ASN_TOP) $(GEN_MODULES)
TARGET_FILES= $(ERL_MODULES:%=$(EBIN)/%.$(EMULATOR))
HRL_FILES = $(ASN_HRLS:%=$(INCLUDE)/%)
-INCLUDE = ../include
-EBIN = ../ebin
-
# ----------------------------------------------------
# FLAGS
# ----------------------------------------------------
@@ -76,15 +77,15 @@ ASN_FLAGS = -bber +der +noobj +asn1config
debug opt: $(TARGET_FILES) $(HRL_FILES)
clean:
- -rm -f $(ASN_ERLS) $(GEN_ERLS) $(ASN_HRLS) $(HRL_FILES) $(ASN_DBS) \
+ -rm -f $(ASN_ERLS) $(ASN_HRLS) $(HRL_FILES) $(ASN_DBS) \
$(ASN_TABLES) $(TARGET_FILES) *.beam *~
docs:
-%.erl %.hrl: %.set.asn
- $(asn_verbose)erlc $(ASN_FLAGS) $<
+$(ESRC)/%.erl $(ESRC)/%.hrl: %.set.asn
+ $(asn_verbose)erlc $(ASN_FLAGS) -o $(ESRC) $<
-$(INCLUDE)/%.hrl: %.hrl
+$(INCLUDE)/%.hrl: $(ESRC)/%.hrl
$(gen_verbose)cp -p $< $@
# ----------------------------------------------------
@@ -96,8 +97,10 @@ 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_CONFIGS) \
+ "$(RELSYSDIR)/asn1"
+ $(INSTALL_DIR) "$(RELSYSDIR)/src"
+ $(INSTALL_DATA) $(ASN_ERLS) "$(RELSYSDIR)/src"
$(INSTALL_DIR) "$(RELSYSDIR)/ebin"
$(INSTALL_DATA) $(TARGET_FILES) "$(RELSYSDIR)/ebin"
@@ -106,7 +109,7 @@ release_docs_spec:
#
# Dependencies
-$(EBIN)/OTP-PUB-KEY.beam: OTP-PUB-KEY.erl OTP-PUB-KEY.hrl
+$(EBIN)/OTP-PUB-KEY.beam: $(ESRC)/OTP-PUB-KEY.erl $(INCLUDE)/OTP-PUB-KEY.hrl
OTP-PUB-KEY.erl OTP-PUB-KEY.hrl: OTP-PUB-KEY.asn1db
OTP-PUB-KEY.asn1db: PKIX1Algorithms88.asn1 \
PKIX1Explicit88.asn1 \
@@ -120,7 +123,7 @@ OTP-PUB-KEY.asn1db: PKIX1Algorithms88.asn1 \
OTP-PKIX.asn1 \
RFC5639.asn1
-$(EBIN)/PKCS-FRAME.beam: PKCS-FRAME.erl PKCS-FRAME.hrl
+$(EBIN)/PKCS-FRAME.beam: $(ESRC)/PKCS-FRAME.erl $(INCLUDE)/PKCS-FRAME.hrl
PKCS-FRAME.erl PKCS-FRAME.hrl: PKCS-FRAME.asn1db
PKCS-FRAME.asn1db: PKCS5v2-0.asn1\
PKCS-8.asn1\
--
2.34.1