Skip to content

Commit 3945581

Browse files
committed
Merge 'sverker/erts/PCRE2-update-10.47' into maint
OTP-19880
2 parents c5ce112 + 73b558c commit 3945581

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+8368
-4887
lines changed

erts/emulator/pcre/LICENCE

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
PCRE2 License
1+
PCRE2 Licence
22
=============
33

44
| SPDX-License-Identifier: | BSD-3-Clause WITH PCRE2-exception |
@@ -16,7 +16,8 @@ testdata directory is not copyrighted and is in the public domain.
1616
The basic library functions are written in C and are freestanding. Also
1717
included in the distribution is a just-in-time compiler that can be used to
1818
optimize pattern matching. This is an optional feature that can be omitted when
19-
the library is built.
19+
the library is built. The just-in-time compiler is separately licensed under the
20+
"2-clause BSD" licence.
2021

2122

2223
COPYRIGHT
@@ -53,6 +54,8 @@ COPYRIGHT
5354
Copyright (c) 2009-2024 Zoltan Herczeg
5455
All rights reserved.
5556

57+
The code in the `deps/sljit` directory has its own LICENSE file.
58+
5659
### All other contributions
5760

5861
Many other contributors have participated in the authorship of PCRE2. As PCRE2
@@ -99,5 +102,3 @@ not apply all the way down a chain of software. If binary package A includes
99102
PCRE2, it must respect the condition, but if package B is software that
100103
includes package A, the condition is not imposed on package B unless it uses
101104
PCRE2 independently.
102-
103-
End

erts/emulator/pcre/README.pcre_update.md

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -238,9 +238,9 @@ like this in the C source:
238238
When building, pcre2\_match\_loop\_break\_cases.gen.h will be generated
239239
during build by pcre.mk, it will look like:
240240

241-
case 791: goto L_LOOP_COUNT_691;
242-
case 1892: goto L_LOOP_COUNT_1792;
243-
case 1999: goto L_LOOP_COUNT_1899;
241+
case 791: goto L_LOOP_COUNT_791;
242+
case 1892: goto L_LOOP_COUNT_1892;
243+
case 1999: goto L_LOOP_COUNT_1999;
244244

245245
etc
246246

@@ -301,15 +301,13 @@ like this:
301301

302302
And the according variables were removed together with dependencies
303303
from pcre.mk. Note that you will need to put things back in order in
304-
pcre.mk after all testing is done. Once a 'make' is successful, you
305-
can generate new dependencies:
304+
pcre.mk after all testing is done.
306305

307-
~/tmp/pcre/epcre-8.33> gcc -MM -c -g -O2 -DHAVE_CONFIG_H -I/ldisk/pan/git/otp/erts/x86_64-unknown-linux-gnu -DERLANG_INTEGRATION *.c | grep -v $ERL_TOP
306+
Regenerate the make dependencies in `depend.mk` with:
308307

309-
Well, then you have to add $(PCRE\_OBJDIR)/ to each object and
310-
$(PCRE\_DIR)/ to each header. I did it manually, it's just a couple of
311-
files. Now your pcre.mk is fairly up to date and it's time to start
312-
patching in the changes...
308+
~/erts/emulator/pcre/> make -f pcre.mk depend
309+
310+
Now your pcre.mk is fairly up to date and it's time to start patching in the changes...
313311

314312
## Updating pcre2_match.c
315313

@@ -473,7 +471,7 @@ fix whatever you did in pcre.mk to make it build locally.
473471
## Update test suites
474472

475473
The next step is to integrate the updated PCRE2 tests into our test suites.
476-
Copy testoutput[1-5,10] from the testdata directory of your new version
474+
Copy testoutput[1,2,4,5,10] from the testdata directory of your new version
477475
of pcre2, to the re\_SUITE\_data in stdlib's test suites. Run the
478476
test suites and remove any bugs. Usually the bugs come from the fact
479477
that the PCRE test suites get better and from our implementation of

erts/emulator/pcre/depend.mk

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
$(PCRE_OBJDIR)/pcre2_auto_possess.o: $(PCRE_DIR)/pcre2_auto_possess.c $(PCRE_DIR)/pcre2_internal.h \
2+
$(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
3+
$(PCRE_OBJDIR)/pcre2_chartables.o: $(PCRE_DIR)/pcre2_chartables.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h \
4+
$(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
5+
$(PCRE_OBJDIR)/pcre2_chkdint.o: $(PCRE_DIR)/pcre2_chkdint.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
6+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
7+
$(PCRE_OBJDIR)/pcre2_compile.o: $(PCRE_DIR)/pcre2_compile.c $(PCRE_DIR)/pcre2_compile.h $(PCRE_DIR)/pcre2_internal.h \
8+
$(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
9+
$(PCRE_OBJDIR)/pcre2_compile_cgroup.o: $(PCRE_DIR)/pcre2_compile_cgroup.c $(PCRE_DIR)/pcre2_compile.h \
10+
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
11+
$(PCRE_DIR)/pcre2_util.h
12+
$(PCRE_OBJDIR)/pcre2_compile_class.o: $(PCRE_DIR)/pcre2_compile_class.c $(PCRE_DIR)/pcre2_compile.h \
13+
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
14+
$(PCRE_DIR)/pcre2_util.h
15+
$(PCRE_OBJDIR)/pcre2_config.o: $(PCRE_DIR)/pcre2_config.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
16+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
17+
$(PCRE_OBJDIR)/pcre2_context.o: $(PCRE_DIR)/pcre2_context.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
18+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
19+
$(PCRE_OBJDIR)/pcre2_error.o: $(PCRE_DIR)/pcre2_error.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
20+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
21+
$(PCRE_OBJDIR)/pcre2_extuni.o: $(PCRE_DIR)/pcre2_extuni.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
22+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
23+
$(PCRE_OBJDIR)/pcre2_find_bracket.o: $(PCRE_DIR)/pcre2_find_bracket.c $(PCRE_DIR)/pcre2_internal.h \
24+
$(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
25+
$(PCRE_OBJDIR)/pcre2_match.o: $(PCRE_DIR)/pcre2_match.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
26+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h \
27+
$(PCRE_DIR)/pcre2_match_yield_coverage.gen.h $(PCRE_DIR)/pcre2_match_loop_break_cases.gen.h
28+
$(PCRE_OBJDIR)/pcre2_match_data.o: $(PCRE_DIR)/pcre2_match_data.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h \
29+
$(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
30+
$(PCRE_OBJDIR)/pcre2_newline.o: $(PCRE_DIR)/pcre2_newline.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
31+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
32+
$(PCRE_OBJDIR)/pcre2_ord2utf.o: $(PCRE_DIR)/pcre2_ord2utf.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
33+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
34+
$(PCRE_OBJDIR)/pcre2_pattern_info.o: $(PCRE_DIR)/pcre2_pattern_info.c $(PCRE_DIR)/pcre2_internal.h \
35+
$(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
36+
$(PCRE_OBJDIR)/pcre2_script_run.o: $(PCRE_DIR)/pcre2_script_run.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h \
37+
$(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
38+
$(PCRE_OBJDIR)/pcre2_serialize.o: $(PCRE_DIR)/pcre2_serialize.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h \
39+
$(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
40+
$(PCRE_OBJDIR)/pcre2_string_utils.o: $(PCRE_DIR)/pcre2_string_utils.c $(PCRE_DIR)/pcre2_internal.h \
41+
$(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
42+
$(PCRE_OBJDIR)/pcre2_study.o: $(PCRE_DIR)/pcre2_study.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
43+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
44+
$(PCRE_OBJDIR)/pcre2_substring.o: $(PCRE_DIR)/pcre2_substring.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h \
45+
$(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
46+
$(PCRE_OBJDIR)/pcre2_tables.o: $(PCRE_DIR)/pcre2_tables.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
47+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h $(PCRE_DIR)/pcre2_ucptables_inc.h
48+
$(PCRE_OBJDIR)/pcre2_ucd.o: $(PCRE_DIR)/pcre2_ucd.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
49+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
50+
$(PCRE_OBJDIR)/pcre2_valid_utf.o: $(PCRE_DIR)/pcre2_valid_utf.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h \
51+
$(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
52+
$(PCRE_OBJDIR)/pcre2_xclass.o: $(PCRE_DIR)/pcre2_xclass.c $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h \
53+
$(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h

erts/emulator/pcre/pcre.mk

Lines changed: 7 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ pcre2_auto_possess.o \
2525
pcre2_chartables.o \
2626
pcre2_chkdint.o \
2727
pcre2_compile.o \
28+
pcre2_compile_cgroup.o \
2829
pcre2_compile_class.o \
2930
pcre2_config.o \
3031
pcre2_context.o \
@@ -85,78 +86,9 @@ $(PCRE_YIELD_COV): $(PCRE_DIR)/pcre2_match.c
8586
done > $@; \
8687
echo "#define ERLANG_YIELD_POINT_CNT $$INDEX" >> $@
8788

88-
# Dependencies.
89-
$(PCRE_OBJDIR)/pcre2_auto_possess.o: $(PCRE_DIR)/pcre2_auto_possess.c \
90-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
91-
$(PCRE_DIR)/pcre2_util.h
92-
$(PCRE_OBJDIR)/pcre2_chartables.o: $(PCRE_DIR)/pcre2_chartables.c \
93-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
94-
$(PCRE_DIR)/pcre2_util.h
95-
$(PCRE_OBJDIR)/pcre2_chkdint.o: $(PCRE_DIR)/pcre2_chkdint.c \
96-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
97-
$(PCRE_DIR)/pcre2_util.h
98-
$(PCRE_OBJDIR)/pcre2_compile.o: $(PCRE_DIR)/pcre2_compile.c \
99-
$(PCRE_DIR)/pcre2_compile.h $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h \
100-
$(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
101-
$(PCRE_OBJDIR)/pcre2_compile_class.o: $(PCRE_DIR)/pcre2_compile_class.c \
102-
$(PCRE_DIR)/pcre2_compile.h $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h \
103-
$(PCRE_DIR)/pcre2_intmodedep.h $(PCRE_DIR)/pcre2_util.h
104-
$(PCRE_OBJDIR)/pcre2_config.o: $(PCRE_DIR)/pcre2_config.c \
105-
$(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
106-
$(PCRE_DIR)/pcre2_util.h
107-
$(PCRE_OBJDIR)/pcre2_context.o: $(PCRE_DIR)/pcre2_context.c \
108-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
109-
$(PCRE_DIR)/pcre2_util.h
110-
$(PCRE_OBJDIR)/pcre2_error.o: $(PCRE_DIR)/pcre2_error.c \
111-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
112-
$(PCRE_DIR)/pcre2_util.h
113-
$(PCRE_OBJDIR)/pcre2_extuni.o: $(PCRE_DIR)/pcre2_extuni.c \
114-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
115-
$(PCRE_DIR)/pcre2_util.h
116-
$(PCRE_OBJDIR)/pcre2_find_bracket.o: $(PCRE_DIR)/pcre2_find_bracket.c \
117-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
118-
$(PCRE_DIR)/pcre2_util.h
119-
$(PCRE_OBJDIR)/pcre2_match.o: $(PCRE_DIR)/pcre2_match.c \
120-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
121-
$(PCRE_DIR)/pcre2_util.h $(PCRE_DIR)/pcre2_match_loop_break_cases.gen.h $(PCRE_DIR)/pcre2_match_yield_coverage.gen.h
122-
$(PCRE_OBJDIR)/pcre2_match_data.o: $(PCRE_DIR)/pcre2_match_data.c \
123-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
124-
$(PCRE_DIR)/pcre2_util.h
125-
$(PCRE_OBJDIR)/pcre2_newline.o: $(PCRE_DIR)/pcre2_newline.c \
126-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
127-
$(PCRE_DIR)/pcre2_util.h
128-
$(PCRE_OBJDIR)/pcre2_ord2utf.o: $(PCRE_DIR)/pcre2_ord2utf.c \
129-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
130-
$(PCRE_DIR)/pcre2_util.h
131-
$(PCRE_OBJDIR)/pcre2_pattern_info.o: $(PCRE_DIR)/pcre2_pattern_info.c \
132-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
133-
$(PCRE_DIR)/pcre2_util.h
134-
$(PCRE_OBJDIR)/pcre2_script_run.o: $(PCRE_DIR)/pcre2_script_run.c \
135-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
136-
$(PCRE_DIR)/pcre2_util.h
137-
$(PCRE_OBJDIR)/pcre2_serialize.o: $(PCRE_DIR)/pcre2_serialize.c \
138-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
139-
$(PCRE_DIR)/pcre2_util.h
140-
$(PCRE_OBJDIR)/pcre2_string_utils.o: $(PCRE_DIR)/pcre2_string_utils.c \
141-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
142-
$(PCRE_DIR)/pcre2_util.h
143-
$(PCRE_OBJDIR)/pcre2_study.o: $(PCRE_DIR)/pcre2_study.c \
144-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
145-
$(PCRE_DIR)/pcre2_util.h
146-
$(PCRE_OBJDIR)/pcre2_substring.o: $(PCRE_DIR)/pcre2_substring.c \
147-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
148-
$(PCRE_DIR)/pcre2_util.h
149-
$(PCRE_OBJDIR)/pcre2_tables.o: $(PCRE_DIR)/pcre2_tables.c \
150-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
151-
$(PCRE_DIR)/pcre2_util.h \
152-
$(PCRE_DIR)/pcre2_ucptables.c
153-
$(PCRE_OBJDIR)/pcre2_ucd.o: $(PCRE_DIR)/pcre2_ucd.c \
154-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
155-
$(PCRE_DIR)/pcre2_util.h
156-
$(PCRE_OBJDIR)/pcre2_ucptables.o: $(PCRE_DIR)/pcre2_ucptables.c
157-
$(PCRE_OBJDIR)/pcre2_valid_utf.o: $(PCRE_DIR)/pcre2_valid_utf.c \
158-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
159-
$(PCRE_DIR)/pcre2_util.h
160-
$(PCRE_OBJDIR)/pcre2_xclass.o: $(PCRE_DIR)/pcre2_xclass.c \
161-
$(PCRE_DIR)/pcre2_internal.h $(PCRE_DIR)/local_config.h $(PCRE_DIR)/pcre2.h $(PCRE_DIR)/pcre2_ucp.h $(PCRE_DIR)/pcre2_intmodedep.h \
162-
$(PCRE_DIR)/pcre2_util.h
89+
depend:
90+
gcc -MM -MG -c -DERLANG_INTEGRATION -DDEBUG *.c \
91+
| sed -E 's/\S+\.o:/$$(PCRE_OBJDIR)\/&/' \
92+
| sed -E 's/\S+\.[ch]\b/$$(PCRE_DIR)\/&/g' > depend.mk
93+
94+
-include $(PCRE_DIR)/depend.mk

0 commit comments

Comments
 (0)