quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

Makefile.am (4401B)


      1 #***************************************************************************
      2 #                                  _   _ ____  _
      3 #  Project                     ___| | | |  _ \| |
      4 #                             / __| | | | |_) | |
      5 #                            | (__| |_| |  _ <| |___
      6 #                             \___|\___/|_| \_\_____|
      7 #
      8 # Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
      9 #
     10 # This software is licensed as described in the file COPYING, which
     11 # you should have received as part of this distribution. The terms
     12 # are also available at https://curl.se/docs/copyright.html.
     13 #
     14 # You may opt to use, copy, modify, merge, publish, distribute and/or sell
     15 # copies of the Software, and permit persons to whom the Software is
     16 # furnished to do so, under the terms of the COPYING file.
     17 #
     18 # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
     19 # KIND, either express or implied.
     20 #
     21 # SPDX-License-Identifier: curl
     22 #
     23 ###########################################################################
     24 
     25 # scripts used in test cases
     26 TESTSCRIPTS = \
     27  test1119.pl  \
     28  test1132.pl  \
     29  test1135.pl  \
     30  test1139.pl  \
     31  test1140.pl  \
     32  test1165.pl  \
     33  test1167.pl  \
     34  test1173.pl  \
     35  test1175.pl  \
     36  test1177.pl  \
     37  test1222.pl  \
     38  test1275.pl  \
     39  test1276.pl  \
     40  test1477.pl  \
     41  test1486.pl  \
     42  test1488.pl  \
     43  test1544.pl  \
     44  test1707.pl  \
     45  test745.pl  \
     46  test971.pl
     47 
     48 EXTRA_DIST =        \
     49  CMakeLists.txt     \
     50  allversions.pm     \
     51  appveyor.pm        \
     52  azure.pm           \
     53  devtest.pl         \
     54  dictserver.py      \
     55  directories.pm     \
     56  ech_combos.py      \
     57  ech_tests.sh       \
     58  ftpserver.pl       \
     59  getpart.pm         \
     60  globalconfig.pm    \
     61  http-server.pl     \
     62  http2-server.pl    \
     63  http3-server.pl    \
     64  memanalyze.pl      \
     65  negtelnetserver.py \
     66  nghttpx.conf       \
     67  pathhelp.pm        \
     68  processhelp.pm     \
     69  requirements.txt   \
     70  rtspserver.pl      \
     71  runner.pm          \
     72  runtests.pl        \
     73  secureserver.pl    \
     74  serverhelp.pm      \
     75  servers.pm         \
     76  smbserver.py       \
     77  sshhelp.pm         \
     78  sshserver.pl       \
     79  testcurl.pl        \
     80  testutil.pm        \
     81  tftpserver.pl      \
     82  util.py            \
     83  valgrind.pm        \
     84  valgrind.supp      \
     85  $(TESTSCRIPTS)
     86 
     87 # we have two variables here to make sure DIST_SUBDIRS won't get 'unit'
     88 # added twice as then targets such as 'distclean' misbehave and try to
     89 # do things twice in that subdir at times (and thus fails).
     90 if BUILD_UNITTESTS
     91 BUILD_UNIT = unit tunit
     92 DIST_UNIT =
     93 else
     94 BUILD_UNIT =
     95 DIST_UNIT = unit tunit
     96 endif
     97 
     98 SUBDIRS = certs data server libtest client http $(BUILD_UNIT)
     99 DIST_SUBDIRS = $(SUBDIRS) $(DIST_UNIT)
    100 
    101 PERLFLAGS = -I$(srcdir)
    102 
    103 CLEANFILES = .http.pid .https.pid .ftp.pid .ftps.pid
    104 
    105 curl:
    106 	@cd $(top_builddir) && $(MAKE)
    107 
    108 TEST_COMMON =
    109 
    110 if CROSSCOMPILING
    111 TEST = @echo "NOTICE: we can't run the tests when cross-compiling!"
    112 PYTEST = $(TEST)
    113 else # if not cross-compiling:
    114 
    115 if BUILD_DOCS
    116 else
    117 TEST_COMMON += !documentation
    118 endif
    119 
    120 TEST = srcdir=$(srcdir) $(PERL) $(PERLFLAGS) $(srcdir)/runtests.pl $(TEST_COMMON)
    121 TEST_Q = -a -s
    122 TEST_AM = -a -am
    123 TEST_F = -a -p -r
    124 TEST_T = -a -t -j20
    125 TEST_E = -a -e
    126 
    127 # ~<keyword> means that it will run all tests matching the keyword, but will
    128 # ignore their results (since these ones are likely to fail for no good reason)
    129 TEST_NF = -a -p ~flaky ~timing-dependent
    130 
    131 # special CI target derived from nonflaky with CI-specific flags
    132 TEST_CI = $(TEST_NF) -r --retry=5 -j20
    133 
    134 PYTEST = pytest
    135 endif
    136 
    137 # make sure that PERL is pointing to an executable
    138 perlcheck:
    139 	@if ! test -x "$(PERL)"; then echo "No perl!"; exit 2; fi
    140 
    141 build-certs:
    142 	(cd certs && $(MAKE))
    143 
    144 test: perlcheck all
    145 	$(TEST) $(TFLAGS)
    146 
    147 quiet-test: perlcheck all
    148 	$(TEST) $(TEST_Q) $(TFLAGS)
    149 
    150 am-test: perlcheck all
    151 	$(TEST) $(TEST_AM) $(TFLAGS)
    152 
    153 ci-test: perlcheck all
    154 	$(TEST) $(TEST_CI) $(TFLAGS)
    155 
    156 full-test: perlcheck all
    157 	$(TEST) $(TEST_F) $(TFLAGS)
    158 
    159 nonflaky-test: perlcheck all
    160 	$(TEST) $(TEST_NF) $(TFLAGS)
    161 
    162 torture-test: perlcheck all
    163 	$(TEST) $(TEST_T) $(TFLAGS)
    164 
    165 event-test: perlcheck all
    166 	$(TEST) $(TEST_E) $(TFLAGS)
    167 
    168 default-pytest: ci-pytest
    169 
    170 ci-pytest: all
    171 	srcdir=$(srcdir) $(PYTEST) -n auto -v $(srcdir)/http
    172 
    173 checksrc:
    174 	(cd libtest && $(MAKE) checksrc)
    175 	(cd unit && $(MAKE) checksrc)
    176 	(cd tunit && $(MAKE) checksrc)
    177 	(cd server && $(MAKE) checksrc)
    178 	(cd client && $(MAKE) checksrc)
    179 	(cd http && $(MAKE) checksrc)
    180 
    181 all-local: $(MANFILES) build-certs
    182 
    183 distclean:
    184 	rm -f $(MANFILES)