File: build.sh

package info (click to toggle)
ada-url 3.4.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,320 kB
  • sloc: cpp: 24,281; ansic: 4,553; python: 573; sh: 193; makefile: 17
file content (77 lines) | stat: -rwxr-xr-x 1,854 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/bin/bash

cd $SRC/ada-url

mkdir build
AMALGAMATE_OUTPUT_PATH=./build/singleheader python3 singleheader/amalgamate.py

$CXX $CFLAGS $CXXFLAGS \
     -std=c++20 \
     -I build/singleheader \
     -c fuzz/parse.cc -o parse.o

$CXX $CFLAGS $CXXFLAGS $LIB_FUZZING_ENGINE parse.o \
     -o $OUT/parse

$CXX $CFLAGS $CXXFLAGS \
     -std=c++20 \
     -I build/singleheader \
     -c fuzz/can_parse.cc -o can_parse.o

$CXX $CFLAGS $CXXFLAGS $LIB_FUZZING_ENGINE can_parse.o \
     -o $OUT/can_parse

$CXX $CFLAGS $CXXFLAGS \
     -std=c++20 \
     -I build/singleheader \
     -c fuzz/idna.cc -o idna.o

$CXX $CFLAGS $CXXFLAGS $LIB_FUZZING_ENGINE idna.o \
     -o $OUT/idna

$CXX $CFLAGS $CXXFLAGS \
     -std=c++20 \
     -I build/singleheader \
     -c fuzz/url_search_params.cc -o url_search_params.o

$CXX $CFLAGS $CXXFLAGS $LIB_FUZZING_ENGINE url_search_params.o \
     -o $OUT/url_search_params

# IMPORTANT
#
# We use std_regex_provider for testing purposes.
# It is not encouraged or recommended to be used within production
# environments due to security problems.
#
# Please do not enable it on production systems!
#
$CXX -DADA_USE_UNSAFE_STD_REGEX_PROVIDER=1 \
     $CFLAGS $CXXFLAGS \
     -std=c++20 \
     -I build/singleheader \
     -c fuzz/url_pattern.cc -o url_pattern.o

$CXX -DADA_USE_UNSAFE_STD_REGEX_PROVIDER=1 \
     $CFLAGS $CXXFLAGS $LIB_FUZZING_ENGINE \
     url_pattern.o \
     -o $OUT/url_pattern

$CXX $CFLAGS $CXXFLAGS \
     -std=c++20 \
     -I build/singleheader \
     -c build/singleheader/ada.cpp -o ada.o

$CC $CFLAGS $CXXFLAGS \
     -I build/singleheader \
     -c fuzz/ada_c.c -o ada_c.o

$CXX $CFLAGS $CXXFLAGS $LIB_FUZZING_ENGINE ./ada.o ada_c.o \
     -o $OUT/ada_c

cp $SRC/ada-url/fuzz/*.dict $SRC/ada-url/fuzz/*.options $OUT/

# Build unit test
mkdir build-tests
cd build-tests
cmake -DADA_TESTING=True ..
make