1*6236dae4SAndroid Build Coastguard Worker#*************************************************************************** 2*6236dae4SAndroid Build Coastguard Worker# _ _ ____ _ 3*6236dae4SAndroid Build Coastguard Worker# Project ___| | | | _ \| | 4*6236dae4SAndroid Build Coastguard Worker# / __| | | | |_) | | 5*6236dae4SAndroid Build Coastguard Worker# | (__| |_| | _ <| |___ 6*6236dae4SAndroid Build Coastguard Worker# \___|\___/|_| \_\_____| 7*6236dae4SAndroid Build Coastguard Worker# 8*6236dae4SAndroid Build Coastguard Worker# Copyright (C) Daniel Stenberg, <[email protected]>, et al. 9*6236dae4SAndroid Build Coastguard Worker# 10*6236dae4SAndroid Build Coastguard Worker# This software is licensed as described in the file COPYING, which 11*6236dae4SAndroid Build Coastguard Worker# you should have received as part of this distribution. The terms 12*6236dae4SAndroid Build Coastguard Worker# are also available at https://curl.se/docs/copyright.html. 13*6236dae4SAndroid Build Coastguard Worker# 14*6236dae4SAndroid Build Coastguard Worker# You may opt to use, copy, modify, merge, publish, distribute and/or sell 15*6236dae4SAndroid Build Coastguard Worker# copies of the Software, and permit persons to whom the Software is 16*6236dae4SAndroid Build Coastguard Worker# furnished to do so, under the terms of the COPYING file. 17*6236dae4SAndroid Build Coastguard Worker# 18*6236dae4SAndroid Build Coastguard Worker# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 19*6236dae4SAndroid Build Coastguard Worker# KIND, either express or implied. 20*6236dae4SAndroid Build Coastguard Worker# 21*6236dae4SAndroid Build Coastguard Worker# SPDX-License-Identifier: curl 22*6236dae4SAndroid Build Coastguard Worker# 23*6236dae4SAndroid Build Coastguard Worker########################################################################### 24*6236dae4SAndroid Build Coastguard Worker 25*6236dae4SAndroid Build Coastguard WorkerAUTOMAKE_OPTIONS = foreign 26*6236dae4SAndroid Build Coastguard Worker 27*6236dae4SAndroid Build Coastguard WorkerACLOCAL_AMFLAGS = -I m4 28*6236dae4SAndroid Build Coastguard Worker 29*6236dae4SAndroid Build Coastguard WorkerCMAKE_DIST = \ 30*6236dae4SAndroid Build Coastguard Worker CMake/cmake_uninstall.cmake.in \ 31*6236dae4SAndroid Build Coastguard Worker CMake/CMakeConfigurableFile.in \ 32*6236dae4SAndroid Build Coastguard Worker CMake/curl-config.cmake.in \ 33*6236dae4SAndroid Build Coastguard Worker CMake/CurlSymbolHiding.cmake \ 34*6236dae4SAndroid Build Coastguard Worker CMake/CurlTests.c \ 35*6236dae4SAndroid Build Coastguard Worker CMake/FindBearSSL.cmake \ 36*6236dae4SAndroid Build Coastguard Worker CMake/FindBrotli.cmake \ 37*6236dae4SAndroid Build Coastguard Worker CMake/FindCares.cmake \ 38*6236dae4SAndroid Build Coastguard Worker CMake/FindGSS.cmake \ 39*6236dae4SAndroid Build Coastguard Worker CMake/FindLibgsasl.cmake \ 40*6236dae4SAndroid Build Coastguard Worker CMake/FindLibidn2.cmake \ 41*6236dae4SAndroid Build Coastguard Worker CMake/FindLibpsl.cmake \ 42*6236dae4SAndroid Build Coastguard Worker CMake/FindLibssh.cmake \ 43*6236dae4SAndroid Build Coastguard Worker CMake/FindLibssh2.cmake \ 44*6236dae4SAndroid Build Coastguard Worker CMake/FindLibuv.cmake \ 45*6236dae4SAndroid Build Coastguard Worker CMake/FindMbedTLS.cmake \ 46*6236dae4SAndroid Build Coastguard Worker CMake/FindMSH3.cmake \ 47*6236dae4SAndroid Build Coastguard Worker CMake/FindMbedTLS.cmake \ 48*6236dae4SAndroid Build Coastguard Worker CMake/FindNGHTTP2.cmake \ 49*6236dae4SAndroid Build Coastguard Worker CMake/FindNGHTTP3.cmake \ 50*6236dae4SAndroid Build Coastguard Worker CMake/FindNGTCP2.cmake \ 51*6236dae4SAndroid Build Coastguard Worker CMake/FindNettle.cmake \ 52*6236dae4SAndroid Build Coastguard Worker CMake/FindQuiche.cmake \ 53*6236dae4SAndroid Build Coastguard Worker CMake/FindRustls.cmake \ 54*6236dae4SAndroid Build Coastguard Worker CMake/FindWolfSSH.cmake \ 55*6236dae4SAndroid Build Coastguard Worker CMake/FindWolfSSL.cmake \ 56*6236dae4SAndroid Build Coastguard Worker CMake/FindZstd.cmake \ 57*6236dae4SAndroid Build Coastguard Worker CMake/Macros.cmake \ 58*6236dae4SAndroid Build Coastguard Worker CMake/OtherTests.cmake \ 59*6236dae4SAndroid Build Coastguard Worker CMake/PickyWarnings.cmake \ 60*6236dae4SAndroid Build Coastguard Worker CMake/Platforms/WindowsCache.cmake \ 61*6236dae4SAndroid Build Coastguard Worker CMake/Utilities.cmake \ 62*6236dae4SAndroid Build Coastguard Worker CMakeLists.txt 63*6236dae4SAndroid Build Coastguard Worker 64*6236dae4SAndroid Build Coastguard WorkerVC_DIST = projects/README.md \ 65*6236dae4SAndroid Build Coastguard Worker projects/build-openssl.bat \ 66*6236dae4SAndroid Build Coastguard Worker projects/build-wolfssl.bat \ 67*6236dae4SAndroid Build Coastguard Worker projects/checksrc.bat \ 68*6236dae4SAndroid Build Coastguard Worker projects/generate.bat \ 69*6236dae4SAndroid Build Coastguard Worker projects/wolfssl_options.h \ 70*6236dae4SAndroid Build Coastguard Worker projects/wolfssl_override.props 71*6236dae4SAndroid Build Coastguard Worker 72*6236dae4SAndroid Build Coastguard WorkerWINBUILD_DIST = winbuild/README.md \ 73*6236dae4SAndroid Build Coastguard Worker winbuild/MakefileBuild.vc winbuild/Makefile.vc winbuild/makedebug.bat 74*6236dae4SAndroid Build Coastguard Worker 75*6236dae4SAndroid Build Coastguard WorkerPLAN9_DIST = plan9/include/mkfile \ 76*6236dae4SAndroid Build Coastguard Worker plan9/include/mkfile \ 77*6236dae4SAndroid Build Coastguard Worker plan9/mkfile.proto \ 78*6236dae4SAndroid Build Coastguard Worker plan9/mkfile \ 79*6236dae4SAndroid Build Coastguard Worker plan9/README \ 80*6236dae4SAndroid Build Coastguard Worker plan9/lib/mkfile.inc \ 81*6236dae4SAndroid Build Coastguard Worker plan9/lib/mkfile \ 82*6236dae4SAndroid Build Coastguard Worker plan9/src/mkfile.inc \ 83*6236dae4SAndroid Build Coastguard Worker plan9/src/mkfile 84*6236dae4SAndroid Build Coastguard Worker 85*6236dae4SAndroid Build Coastguard WorkerEXTRA_DIST = CHANGES.md COPYING Makefile.dist \ 86*6236dae4SAndroid Build Coastguard Worker RELEASE-NOTES $(CMAKE_DIST) $(VC_DIST) $(WINBUILD_DIST) \ 87*6236dae4SAndroid Build Coastguard Worker $(PLAN9_DIST) buildconf.bat Dockerfile 88*6236dae4SAndroid Build Coastguard Worker 89*6236dae4SAndroid Build Coastguard WorkerCLEANFILES = $(VC14_LIBVCXPROJ) $(VC14_SRCVCXPROJ) \ 90*6236dae4SAndroid Build Coastguard Worker $(VC14_10_LIBVCXPROJ) $(VC14_10_SRCVCXPROJ) \ 91*6236dae4SAndroid Build Coastguard Worker $(VC14_20_LIBVCXPROJ) $(VC14_20_SRCVCXPROJ) \ 92*6236dae4SAndroid Build Coastguard Worker $(VC14_30_LIBVCXPROJ) $(VC14_30_SRCVCXPROJ) 93*6236dae4SAndroid Build Coastguard Worker 94*6236dae4SAndroid Build Coastguard WorkerDISTCLEANFILES = buildinfo.txt 95*6236dae4SAndroid Build Coastguard Worker 96*6236dae4SAndroid Build Coastguard Workerbin_SCRIPTS = curl-config 97*6236dae4SAndroid Build Coastguard Worker 98*6236dae4SAndroid Build Coastguard WorkerSUBDIRS = lib docs src scripts 99*6236dae4SAndroid Build Coastguard WorkerDIST_SUBDIRS = $(SUBDIRS) tests packages include docs 100*6236dae4SAndroid Build Coastguard Worker 101*6236dae4SAndroid Build Coastguard Workerpkgconfigdir = $(libdir)/pkgconfig 102*6236dae4SAndroid Build Coastguard Workerpkgconfig_DATA = libcurl.pc 103*6236dae4SAndroid Build Coastguard Worker 104*6236dae4SAndroid Build Coastguard Worker# List of files required to generate VC IDE .dsp, .vcproj and .vcxproj files 105*6236dae4SAndroid Build Coastguard Workerinclude lib/Makefile.inc 106*6236dae4SAndroid Build Coastguard Workerinclude src/Makefile.inc 107*6236dae4SAndroid Build Coastguard Worker 108*6236dae4SAndroid Build Coastguard Workerdist-hook: 109*6236dae4SAndroid Build Coastguard Worker rm -rf $(top_builddir)/tests/log 110*6236dae4SAndroid Build Coastguard Worker find $(distdir) -name "*.dist" -a \! -name Makefile.dist -exec rm {} \; 111*6236dae4SAndroid Build Coastguard Worker (distit=`find $(srcdir) -name "*.dist" | grep -v Makefile`; \ 112*6236dae4SAndroid Build Coastguard Worker for file in $$distit; do \ 113*6236dae4SAndroid Build Coastguard Worker strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \ 114*6236dae4SAndroid Build Coastguard Worker cp -p $$file $(distdir)$$strip; \ 115*6236dae4SAndroid Build Coastguard Worker done) 116*6236dae4SAndroid Build Coastguard Worker 117*6236dae4SAndroid Build Coastguard Workercheck: test examples check-docs 118*6236dae4SAndroid Build Coastguard Worker 119*6236dae4SAndroid Build Coastguard Workerif CROSSCOMPILING 120*6236dae4SAndroid Build Coastguard Workertest-full: test 121*6236dae4SAndroid Build Coastguard Workertest-nonflaky: test 122*6236dae4SAndroid Build Coastguard Workertest-torture: test 123*6236dae4SAndroid Build Coastguard Workertest-event: test 124*6236dae4SAndroid Build Coastguard Workertest-am: test 125*6236dae4SAndroid Build Coastguard Workertest-ci: test 126*6236dae4SAndroid Build Coastguard Workerpytest: test 127*6236dae4SAndroid Build Coastguard Workerpytest-ci: test 128*6236dae4SAndroid Build Coastguard Worker 129*6236dae4SAndroid Build Coastguard Workertest: 130*6236dae4SAndroid Build Coastguard Worker @echo "NOTICE: we can't run the tests when cross-compiling!" 131*6236dae4SAndroid Build Coastguard Worker 132*6236dae4SAndroid Build Coastguard Workerelse 133*6236dae4SAndroid Build Coastguard Worker 134*6236dae4SAndroid Build Coastguard Workertest: 135*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all quiet-test) 136*6236dae4SAndroid Build Coastguard Worker 137*6236dae4SAndroid Build Coastguard Workertest-full: 138*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all full-test) 139*6236dae4SAndroid Build Coastguard Worker 140*6236dae4SAndroid Build Coastguard Workertest-nonflaky: 141*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all nonflaky-test) 142*6236dae4SAndroid Build Coastguard Worker 143*6236dae4SAndroid Build Coastguard Workertest-torture: 144*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all torture-test) 145*6236dae4SAndroid Build Coastguard Worker 146*6236dae4SAndroid Build Coastguard Workertest-event: 147*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all event-test) 148*6236dae4SAndroid Build Coastguard Worker 149*6236dae4SAndroid Build Coastguard Workertest-am: 150*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all am-test) 151*6236dae4SAndroid Build Coastguard Worker 152*6236dae4SAndroid Build Coastguard Workertest-ci: 153*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all ci-test) 154*6236dae4SAndroid Build Coastguard Worker 155*6236dae4SAndroid Build Coastguard Workerpytest: 156*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all default-pytest) 157*6236dae4SAndroid Build Coastguard Worker 158*6236dae4SAndroid Build Coastguard Workerpytest-ci: 159*6236dae4SAndroid Build Coastguard Worker @(cd tests; $(MAKE) all ci-pytest) 160*6236dae4SAndroid Build Coastguard Worker 161*6236dae4SAndroid Build Coastguard Workerendif 162*6236dae4SAndroid Build Coastguard Worker 163*6236dae4SAndroid Build Coastguard Workerexamples: 164*6236dae4SAndroid Build Coastguard Worker @(cd docs/examples; $(MAKE) check) 165*6236dae4SAndroid Build Coastguard Worker 166*6236dae4SAndroid Build Coastguard Workercheck-docs: 167*6236dae4SAndroid Build Coastguard Worker @(cd docs/libcurl; $(MAKE) check) 168*6236dae4SAndroid Build Coastguard Worker 169*6236dae4SAndroid Build Coastguard Worker# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros 170*6236dae4SAndroid Build Coastguard Worker# must contain the following line: 171*6236dae4SAndroid Build Coastguard Worker# %_topdir /home/loic/local/rpm 172*6236dae4SAndroid Build Coastguard Worker# and that /home/loic/local/rpm contains the directory SOURCES, BUILD etc. 173*6236dae4SAndroid Build Coastguard Worker# 174*6236dae4SAndroid Build Coastguard Worker# cd /home/loic/local/rpm ; mkdir -p SOURCES BUILD RPMS/i386 SPECS SRPMS 175*6236dae4SAndroid Build Coastguard Worker# 176*6236dae4SAndroid Build Coastguard Worker# If additional configure flags are needed to build the package, add the 177*6236dae4SAndroid Build Coastguard Worker# following in ~/.rpmmacros 178*6236dae4SAndroid Build Coastguard Worker# %configure CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix} ${AM_CONFIGFLAGS} 179*6236dae4SAndroid Build Coastguard Worker# and run make rpm in the following way: 180*6236dae4SAndroid Build Coastguard Worker# AM_CONFIGFLAGS='--with-uri=/home/users/loic/local/RedHat-6.2' make rpm 181*6236dae4SAndroid Build Coastguard Worker# 182*6236dae4SAndroid Build Coastguard Worker 183*6236dae4SAndroid Build Coastguard Workerrpms: 184*6236dae4SAndroid Build Coastguard Worker $(MAKE) RPMDIST=curl rpm 185*6236dae4SAndroid Build Coastguard Worker $(MAKE) RPMDIST=curl-ssl rpm 186*6236dae4SAndroid Build Coastguard Worker 187*6236dae4SAndroid Build Coastguard Workerrpm: 188*6236dae4SAndroid Build Coastguard Worker RPM_TOPDIR=`rpm --showrc | $(PERL) -n -e 'print if(s/.*_topdir\s+(.*)/$$1/)'` ; \ 189*6236dae4SAndroid Build Coastguard Worker cp $(srcdir)/packages/Linux/RPM/$(RPMDIST).spec $$RPM_TOPDIR/SPECS ; \ 190*6236dae4SAndroid Build Coastguard Worker cp $(PACKAGE)-$(VERSION).tar.gz $$RPM_TOPDIR/SOURCES ; \ 191*6236dae4SAndroid Build Coastguard Worker rpm -ba --clean --rmsource $$RPM_TOPDIR/SPECS/$(RPMDIST).spec ; \ 192*6236dae4SAndroid Build Coastguard Worker mv $$RPM_TOPDIR/RPMS/i386/$(RPMDIST)-*.rpm . ; \ 193*6236dae4SAndroid Build Coastguard Worker mv $$RPM_TOPDIR/SRPMS/$(RPMDIST)-*.src.rpm . 194*6236dae4SAndroid Build Coastguard Worker 195*6236dae4SAndroid Build Coastguard Worker# 196*6236dae4SAndroid Build Coastguard Worker# Build a Solaris pkgadd format file 197*6236dae4SAndroid Build Coastguard Worker# run 'make pkgadd' once you've done './configure' and 'make' to make a Solaris pkgadd format 198*6236dae4SAndroid Build Coastguard Worker# file (which ends up back in this directory). 199*6236dae4SAndroid Build Coastguard Worker# The pkgadd file is in 'pkgtrans' format, so to install on Solaris, do 200*6236dae4SAndroid Build Coastguard Worker# pkgadd -d ./HAXXcurl-* 201*6236dae4SAndroid Build Coastguard Worker# 202*6236dae4SAndroid Build Coastguard Worker 203*6236dae4SAndroid Build Coastguard Worker# gak - libtool requires an absolute directory, hence the pwd below... 204*6236dae4SAndroid Build Coastguard Workerpkgadd: 205*6236dae4SAndroid Build Coastguard Worker umask 022 ; \ 206*6236dae4SAndroid Build Coastguard Worker $(MAKE) install DESTDIR=`/bin/pwd`/packages/Solaris/root ; \ 207*6236dae4SAndroid Build Coastguard Worker cat COPYING > $(srcdir)/packages/Solaris/copyright ; \ 208*6236dae4SAndroid Build Coastguard Worker cd $(srcdir)/packages/Solaris && $(MAKE) package 209*6236dae4SAndroid Build Coastguard Worker 210*6236dae4SAndroid Build Coastguard Worker# 211*6236dae4SAndroid Build Coastguard Worker# Build a Cygwin binary tarball installation file 212*6236dae4SAndroid Build Coastguard Worker# resulting .tar.bz2 file will end up at packages/Win32/cygwin 213*6236dae4SAndroid Build Coastguard Workercygwinbin: 214*6236dae4SAndroid Build Coastguard Worker $(MAKE) -C packages/Win32/cygwin cygwinbin 215*6236dae4SAndroid Build Coastguard Worker 216*6236dae4SAndroid Build Coastguard Worker# We extend the standard install with a custom hook: 217*6236dae4SAndroid Build Coastguard Workerif BUILD_DOCS 218*6236dae4SAndroid Build Coastguard Workerinstall-data-hook: 219*6236dae4SAndroid Build Coastguard Worker (cd include && $(MAKE) install) 220*6236dae4SAndroid Build Coastguard Worker (cd docs && $(MAKE) install) 221*6236dae4SAndroid Build Coastguard Worker (cd docs/libcurl && $(MAKE) install) 222*6236dae4SAndroid Build Coastguard Workerelse 223*6236dae4SAndroid Build Coastguard Workerinstall-data-hook: 224*6236dae4SAndroid Build Coastguard Worker (cd include && $(MAKE) install) 225*6236dae4SAndroid Build Coastguard Worker (cd docs && $(MAKE) install) 226*6236dae4SAndroid Build Coastguard Workerendif 227*6236dae4SAndroid Build Coastguard Worker 228*6236dae4SAndroid Build Coastguard Worker# We extend the standard uninstall with a custom hook: 229*6236dae4SAndroid Build Coastguard Workeruninstall-hook: 230*6236dae4SAndroid Build Coastguard Worker (cd include && $(MAKE) uninstall) 231*6236dae4SAndroid Build Coastguard Worker (cd docs && $(MAKE) uninstall) 232*6236dae4SAndroid Build Coastguard Worker (cd docs/libcurl && $(MAKE) uninstall) 233*6236dae4SAndroid Build Coastguard Worker 234*6236dae4SAndroid Build Coastguard Workerca-bundle: $(srcdir)/scripts/mk-ca-bundle.pl 235*6236dae4SAndroid Build Coastguard Worker @echo "generating a fresh ca-bundle.crt" 236*6236dae4SAndroid Build Coastguard Worker @perl $(srcdir)/scripts/mk-ca-bundle.pl -b -l -u lib/ca-bundle.crt 237*6236dae4SAndroid Build Coastguard Worker 238*6236dae4SAndroid Build Coastguard Workerca-firefox: $(srcdir)/scripts/firefox-db2pem.sh 239*6236dae4SAndroid Build Coastguard Worker @echo "generating a fresh ca-bundle.crt" 240*6236dae4SAndroid Build Coastguard Worker $(srcdir)/scripts/firefox-db2pem.sh lib/ca-bundle.crt 241*6236dae4SAndroid Build Coastguard Worker 242*6236dae4SAndroid Build Coastguard Workerchecksrc: 243*6236dae4SAndroid Build Coastguard Worker (cd lib && $(MAKE) checksrc) 244*6236dae4SAndroid Build Coastguard Worker (cd src && $(MAKE) checksrc) 245*6236dae4SAndroid Build Coastguard Worker (cd tests && $(MAKE) checksrc) 246*6236dae4SAndroid Build Coastguard Worker (cd include/curl && $(MAKE) checksrc) 247*6236dae4SAndroid Build Coastguard Worker (cd docs/examples && $(MAKE) checksrc) 248*6236dae4SAndroid Build Coastguard Worker (cd packages && $(MAKE) checksrc) 249*6236dae4SAndroid Build Coastguard Worker 250*6236dae4SAndroid Build Coastguard Workertidy: 251*6236dae4SAndroid Build Coastguard Worker (cd src && $(MAKE) tidy) 252*6236dae4SAndroid Build Coastguard Worker (cd lib && $(MAKE) tidy) 253