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 25AUTOMAKE_OPTIONS = foreign 26 27ACLOCAL_AMFLAGS = -I m4 28 29CMAKE_DIST = \ 30 CMake/cmake_uninstall.cmake.in \ 31 CMake/CMakeConfigurableFile.in \ 32 CMake/curl-config.cmake.in \ 33 CMake/CurlSymbolHiding.cmake \ 34 CMake/CurlTests.c \ 35 CMake/FindBearSSL.cmake \ 36 CMake/FindBrotli.cmake \ 37 CMake/FindCARES.cmake \ 38 CMake/FindGSS.cmake \ 39 CMake/FindLibPSL.cmake \ 40 CMake/FindLibSSH2.cmake \ 41 CMake/FindMbedTLS.cmake \ 42 CMake/FindMSH3.cmake \ 43 CMake/FindNGHTTP2.cmake \ 44 CMake/FindNGHTTP3.cmake \ 45 CMake/FindNGTCP2.cmake \ 46 CMake/FindQUICHE.cmake \ 47 CMake/FindWolfSSL.cmake \ 48 CMake/FindZstd.cmake \ 49 CMake/Macros.cmake \ 50 CMake/OtherTests.cmake \ 51 CMake/PickyWarnings.cmake \ 52 CMake/Platforms/WindowsCache.cmake \ 53 CMake/Utilities.cmake \ 54 CMakeLists.txt 55 56VC14_LIBTMPL = projects/Windows/VC14/lib/libcurl.tmpl 57VC14_LIBVCXPROJ = projects/Windows/VC14/lib/libcurl.vcxproj.dist 58VC14_LIBVCXPROJ_DEPS = $(VC14_LIBTMPL) Makefile.am lib/Makefile.inc 59VC14_SRCTMPL = projects/Windows/VC14/src/curl.tmpl 60VC14_SRCVCXPROJ = projects/Windows/VC14/src/curl.vcxproj.dist 61VC14_SRCVCXPROJ_DEPS = $(VC14_SRCTMPL) Makefile.am src/Makefile.inc 62 63VC14_10_LIBTMPL = projects/Windows/VC14.10/lib/libcurl.tmpl 64VC14_10_LIBVCXPROJ = projects/Windows/VC14.10/lib/libcurl.vcxproj.dist 65VC14_10_LIBVCXPROJ_DEPS = $(VC14_10_LIBTMPL) Makefile.am lib/Makefile.inc 66VC14_10_SRCTMPL = projects/Windows/VC14.10/src/curl.tmpl 67VC14_10_SRCVCXPROJ = projects/Windows/VC14.10/src/curl.vcxproj.dist 68VC14_10_SRCVCXPROJ_DEPS = $(VC14_10_SRCTMPL) Makefile.am src/Makefile.inc 69 70VC14_20_LIBTMPL = projects/Windows/VC14.20/lib/libcurl.tmpl 71VC14_20_LIBVCXPROJ = projects/Windows/VC14.20/lib/libcurl.vcxproj.dist 72VC14_20_LIBVCXPROJ_DEPS = $(VC14_20_LIBTMPL) Makefile.am lib/Makefile.inc 73VC14_20_SRCTMPL = projects/Windows/VC14.20/src/curl.tmpl 74VC14_20_SRCVCXPROJ = projects/Windows/VC14.20/src/curl.vcxproj.dist 75VC14_20_SRCVCXPROJ_DEPS = $(VC14_20_SRCTMPL) Makefile.am src/Makefile.inc 76 77VC14_30_LIBTMPL = projects/Windows/VC14.30/lib/libcurl.tmpl 78VC14_30_LIBVCXPROJ = projects/Windows/VC14.30/lib/libcurl.vcxproj.dist 79VC14_30_LIBVCXPROJ_DEPS = $(VC14_30_LIBTMPL) Makefile.am lib/Makefile.inc 80VC14_30_SRCTMPL = projects/Windows/VC14.30/src/curl.tmpl 81VC14_30_SRCVCXPROJ = projects/Windows/VC14.30/src/curl.vcxproj.dist 82VC14_30_SRCVCXPROJ_DEPS = $(VC14_30_SRCTMPL) Makefile.am src/Makefile.inc 83 84VC_DIST = projects/README.md \ 85 projects/build-openssl.bat \ 86 projects/build-wolfssl.bat \ 87 projects/checksrc.bat \ 88 projects/Windows/VC14/curl-all.sln \ 89 projects/Windows/VC14/lib/libcurl.sln \ 90 projects/Windows/VC14/lib/libcurl.vcxproj.filters \ 91 projects/Windows/VC14/src/curl.sln \ 92 projects/Windows/VC14/src/curl.vcxproj.filters \ 93 projects/Windows/VC14.10/curl-all.sln \ 94 projects/Windows/VC14.10/lib/libcurl.sln \ 95 projects/Windows/VC14.10/lib/libcurl.vcxproj.filters \ 96 projects/Windows/VC14.10/src/curl.sln \ 97 projects/Windows/VC14.10/src/curl.vcxproj.filters \ 98 projects/Windows/VC14.20/curl-all.sln \ 99 projects/Windows/VC14.20/lib/libcurl.sln \ 100 projects/Windows/VC14.20/lib/libcurl.vcxproj.filters \ 101 projects/Windows/VC14.20/src/curl.sln \ 102 projects/Windows/VC14.20/src/curl.vcxproj.filters \ 103 projects/Windows/VC14.30/curl-all.sln \ 104 projects/Windows/VC14.30/lib/libcurl.sln \ 105 projects/Windows/VC14.30/lib/libcurl.vcxproj.filters \ 106 projects/Windows/VC14.30/src/curl.sln \ 107 projects/Windows/VC14.30/src/curl.vcxproj.filters \ 108 projects/generate.bat \ 109 projects/wolfssl_options.h \ 110 projects/wolfssl_override.props 111 112WINBUILD_DIST = winbuild/README.md winbuild/gen_resp_file.bat \ 113 winbuild/MakefileBuild.vc winbuild/Makefile.vc 114 115PLAN9_DIST = plan9/include/mkfile \ 116 plan9/include/mkfile \ 117 plan9/mkfile.proto \ 118 plan9/mkfile \ 119 plan9/README \ 120 plan9/lib/mkfile.inc \ 121 plan9/lib/mkfile \ 122 plan9/src/mkfile.inc \ 123 plan9/src/mkfile 124 125EXTRA_DIST = CHANGES COPYING maketgz Makefile.dist curl-config.in \ 126 RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework $(CMAKE_DIST) \ 127 $(VC_DIST) $(WINBUILD_DIST) $(PLAN9_DIST) lib/libcurl.vers.in buildconf.bat \ 128 libcurl.def 129 130CLEANFILES = $(VC14_LIBVCXPROJ) $(VC14_SRCVCXPROJ) \ 131 $(VC14_10_LIBVCXPROJ) $(VC14_10_SRCVCXPROJ) \ 132 $(VC14_20_LIBVCXPROJ) $(VC14_20_SRCVCXPROJ) \ 133 $(VC14_30_LIBVCXPROJ) $(VC14_30_SRCVCXPROJ) 134 135bin_SCRIPTS = curl-config 136 137SUBDIRS = lib src 138DIST_SUBDIRS = $(SUBDIRS) tests packages scripts include docs 139 140pkgconfigdir = $(libdir)/pkgconfig 141pkgconfig_DATA = libcurl.pc 142 143# List of files required to generate VC IDE .dsp, .vcproj and .vcxproj files 144include lib/Makefile.inc 145include src/Makefile.inc 146 147dist-hook: 148 rm -rf $(top_builddir)/tests/log 149 find $(distdir) -name "*.dist" -exec rm {} \; 150 (distit=`find $(srcdir) -name "*.dist" | grep -v ./ares/`; \ 151 for file in $$distit; do \ 152 strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \ 153 cp -p $$file $(distdir)$$strip; \ 154 done) 155 156check: test examples check-docs 157 158if CROSSCOMPILING 159test-full: test 160test-torture: test 161 162test: 163 @echo "NOTICE: we can't run the tests when cross-compiling!" 164 165else 166 167test: 168 @(cd tests; $(MAKE) all quiet-test) 169 170test-full: 171 @(cd tests; $(MAKE) all full-test) 172 173test-nonflaky: 174 @(cd tests; $(MAKE) all nonflaky-test) 175 176test-torture: 177 @(cd tests; $(MAKE) all torture-test) 178 179test-event: 180 @(cd tests; $(MAKE) all event-test) 181 182test-am: 183 @(cd tests; $(MAKE) all am-test) 184 185test-ci: 186 @(cd tests; $(MAKE) all ci-test) 187 188endif 189 190examples: 191 @(cd docs/examples; $(MAKE) check) 192 193check-docs: 194 @(cd docs/libcurl; $(MAKE) check) 195 196# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros 197# must contain the following line: 198# %_topdir /home/loic/local/rpm 199# and that /home/loic/local/rpm contains the directory SOURCES, BUILD etc. 200# 201# cd /home/loic/local/rpm ; mkdir -p SOURCES BUILD RPMS/i386 SPECS SRPMS 202# 203# If additional configure flags are needed to build the package, add the 204# following in ~/.rpmmacros 205# %configure CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix} ${AM_CONFIGFLAGS} 206# and run make rpm in the following way: 207# AM_CONFIGFLAGS='--with-uri=/home/users/loic/local/RedHat-6.2' make rpm 208# 209 210rpms: 211 $(MAKE) RPMDIST=curl rpm 212 $(MAKE) RPMDIST=curl-ssl rpm 213 214rpm: 215 RPM_TOPDIR=`rpm --showrc | $(PERL) -n -e 'print if(s/.*_topdir\s+(.*)/$$1/)'` ; \ 216 cp $(srcdir)/packages/Linux/RPM/$(RPMDIST).spec $$RPM_TOPDIR/SPECS ; \ 217 cp $(PACKAGE)-$(VERSION).tar.gz $$RPM_TOPDIR/SOURCES ; \ 218 rpm -ba --clean --rmsource $$RPM_TOPDIR/SPECS/$(RPMDIST).spec ; \ 219 mv $$RPM_TOPDIR/RPMS/i386/$(RPMDIST)-*.rpm . ; \ 220 mv $$RPM_TOPDIR/SRPMS/$(RPMDIST)-*.src.rpm . 221 222# 223# Build a Solaris pkgadd format file 224# run 'make pkgadd' once you've done './configure' and 'make' to make a Solaris pkgadd format 225# file (which ends up back in this directory). 226# The pkgadd file is in 'pkgtrans' format, so to install on Solaris, do 227# pkgadd -d ./HAXXcurl-* 228# 229 230# gak - libtool requires an absolute directory, hence the pwd below... 231pkgadd: 232 umask 022 ; \ 233 $(MAKE) install DESTDIR=`/bin/pwd`/packages/Solaris/root ; \ 234 cat COPYING > $(srcdir)/packages/Solaris/copyright ; \ 235 cd $(srcdir)/packages/Solaris && $(MAKE) package 236 237# 238# Build a cygwin binary tarball installation file 239# resulting .tar.bz2 file will end up at packages/Win32/cygwin 240cygwinbin: 241 $(MAKE) -C packages/Win32/cygwin cygwinbin 242 243# We extend the standard install with a custom hook: 244install-data-hook: 245 (cd include && $(MAKE) install) 246 (cd docs && $(MAKE) install) 247 (cd docs/libcurl && $(MAKE) install) 248 249# We extend the standard uninstall with a custom hook: 250uninstall-hook: 251 (cd include && $(MAKE) uninstall) 252 (cd docs && $(MAKE) uninstall) 253 (cd docs/libcurl && $(MAKE) uninstall) 254 255ca-bundle: $(srcdir)/scripts/mk-ca-bundle.pl 256 @echo "generating a fresh ca-bundle.crt" 257 @perl $(srcdir)/scripts/mk-ca-bundle.pl -b -l -u lib/ca-bundle.crt 258 259ca-firefox: $(srcdir)/scripts/firefox-db2pem.sh 260 @echo "generating a fresh ca-bundle.crt" 261 $(srcdir)/scripts/firefox-db2pem.sh lib/ca-bundle.crt 262 263checksrc: 264 (cd lib && $(MAKE) checksrc) 265 (cd src && $(MAKE) checksrc) 266 (cd tests && $(MAKE) checksrc) 267 (cd include/curl && $(MAKE) checksrc) 268 (cd docs/examples && $(MAKE) checksrc) 269 (cd packages && $(MAKE) checksrc) 270 271.PHONY: vc-ide 272 273vc-ide: $(VC14_LIBVCXPROJ_DEPS) $(VC14_SRCVCXPROJ_DEPS) \ 274 $(VC14_10_LIBVCXPROJ_DEPS) $(VC14_10_SRCVCXPROJ_DEPS) \ 275 $(VC14_20_LIBVCXPROJ_DEPS) $(VC14_20_SRCVCXPROJ_DEPS) \ 276 $(VC14_30_LIBVCXPROJ_DEPS) $(VC14_30_SRCVCXPROJ_DEPS) 277 @(win32_lib_srcs='$(LIB_CFILES)'; \ 278 win32_lib_hdrs='$(LIB_HFILES) config-win32.h'; \ 279 win32_lib_rc='$(LIB_RCFILES)'; \ 280 win32_lib_vauth_srcs='$(LIB_VAUTH_CFILES)'; \ 281 win32_lib_vauth_hdrs='$(LIB_VAUTH_HFILES)'; \ 282 win32_lib_vquic_srcs='$(LIB_VQUIC_CFILES)'; \ 283 win32_lib_vquic_hdrs='$(LIB_VQUIC_HFILES)'; \ 284 win32_lib_vssh_srcs='$(LIB_VSSH_CFILES)'; \ 285 win32_lib_vssh_hdrs='$(LIB_VSSH_HFILES)'; \ 286 win32_lib_vtls_srcs='$(LIB_VTLS_CFILES)'; \ 287 win32_lib_vtls_hdrs='$(LIB_VTLS_HFILES)'; \ 288 win32_src_srcs='$(CURL_CFILES)'; \ 289 win32_src_hdrs='$(CURL_HFILES)'; \ 290 win32_src_rc='$(CURL_RCFILES)'; \ 291 win32_src_x_srcs='$(CURLX_CFILES)'; \ 292 win32_src_x_hdrs='$(CURLX_HFILES) ../lib/config-win32.h'; \ 293 \ 294 sorted_lib_srcs=`for file in $$win32_lib_srcs; do echo $$file; done | sort`; \ 295 sorted_lib_hdrs=`for file in $$win32_lib_hdrs; do echo $$file; done | sort`; \ 296 sorted_lib_vauth_srcs=`for file in $$win32_lib_vauth_srcs; do echo $$file; done | sort`; \ 297 sorted_lib_vauth_hdrs=`for file in $$win32_lib_vauth_hdrs; do echo $$file; done | sort`; \ 298 sorted_lib_vquic_srcs=`for file in $$win32_lib_vquic_srcs; do echo $$file; done | sort`; \ 299 sorted_lib_vquic_hdrs=`for file in $$win32_lib_vquic_hdrs; do echo $$file; done | sort`; \ 300 sorted_lib_vssh_srcs=`for file in $$win32_lib_vssh_srcs; do echo $$file; done | sort`; \ 301 sorted_lib_vssh_hdrs=`for file in $$win32_lib_vssh_hdrs; do echo $$file; done | sort`; \ 302 sorted_lib_vtls_srcs=`for file in $$win32_lib_vtls_srcs; do echo $$file; done | sort`; \ 303 sorted_lib_vtls_hdrs=`for file in $$win32_lib_vtls_hdrs; do echo $$file; done | sort`; \ 304 sorted_src_srcs=`for file in $$win32_src_srcs; do echo $$file; done | sort`; \ 305 sorted_src_hdrs=`for file in $$win32_src_hdrs; do echo $$file; done | sort`; \ 306 sorted_src_x_srcs=`for file in $$win32_src_x_srcs; do echo $$file; done | sort`; \ 307 sorted_src_x_hdrs=`for file in $$win32_src_x_hdrs; do echo $$file; done | sort`; \ 308 \ 309 awk_code='\ 310function gen_element(type, dir, file)\ 311{\ 312 sub(/vauth\//, "", file);\ 313 sub(/vquic\//, "", file);\ 314 sub(/vssh\//, "", file);\ 315 sub(/vtls\//, "", file);\ 316\ 317 spaces=" ";\ 318 if(dir == "lib\\vauth" ||\ 319 dir == "lib\\vquic" ||\ 320 dir == "lib\\vssh" ||\ 321 dir == "lib\\vtls")\ 322 tabs=" ";\ 323 else\ 324 tabs=" ";\ 325\ 326 if(type == "dsp") {\ 327 printf("# Begin Source File\r\n");\ 328 printf("\r\n");\ 329 printf("SOURCE=..\\..\\..\\..\\%s\\%s\r\n", dir, file);\ 330 printf("# End Source File\r\n");\ 331 }\ 332 else if(type == "vcproj1") {\ 333 printf("%s<File\r\n", tabs);\ 334 printf("%s RelativePath=\"..\\..\\..\\..\\%s\\%s\">\r\n",\ 335 tabs, dir, file);\ 336 printf("%s</File>\r\n", tabs);\ 337 }\ 338 else if(type == "vcproj2") {\ 339 printf("%s<File\r\n", tabs);\ 340 printf("%s RelativePath=\"..\\..\\..\\..\\%s\\%s\"\r\n",\ 341 tabs, dir, file);\ 342 printf("%s>\r\n", tabs);\ 343 printf("%s</File>\r\n", tabs);\ 344 }\ 345 else if(type == "vcxproj") {\ 346 i = index(file, ".");\ 347 ext = substr(file, i == 0 ? 0 : i + 1);\ 348\ 349 if(ext == "c")\ 350 printf("%s<ClCompile Include=\"..\\..\\..\\..\\%s\\%s\" />\r\n",\ 351 spaces, dir, file);\ 352 else if(ext == "h")\ 353 printf("%s<ClInclude Include=\"..\\..\\..\\..\\%s\\%s\" />\r\n",\ 354 spaces, dir, file);\ 355 else if(ext == "rc")\ 356 printf("%s<ResourceCompile Include=\"..\\..\\..\\..\\%s\\%s\" />\r\n",\ 357 spaces, dir, file);\ 358 }\ 359}\ 360\ 361{\ 362\ 363 if($$0 == "CURL_LIB_C_FILES") {\ 364 split(lib_srcs, arr);\ 365 for(val in arr) gen_element(proj_type, "lib", arr[val]);\ 366 }\ 367 else if($$0 == "CURL_LIB_H_FILES") {\ 368 split(lib_hdrs, arr);\ 369 for(val in arr) gen_element(proj_type, "lib", arr[val]);\ 370 }\ 371 else if($$0 == "CURL_LIB_RC_FILES") {\ 372 split(lib_rc, arr);\ 373 for(val in arr) gen_element(proj_type, "lib", arr[val]);\ 374 }\ 375 else if($$0 == "CURL_LIB_VAUTH_C_FILES") {\ 376 split(lib_vauth_srcs, arr);\ 377 for(val in arr) gen_element(proj_type, "lib\\vauth", arr[val]);\ 378 }\ 379 else if($$0 == "CURL_LIB_VAUTH_H_FILES") {\ 380 split(lib_vauth_hdrs, arr);\ 381 for(val in arr) gen_element(proj_type, "lib\\vauth", arr[val]);\ 382 }\ 383 else if($$0 == "CURL_LIB_VQUIC_C_FILES") {\ 384 split(lib_vquic_srcs, arr);\ 385 for(val in arr) gen_element(proj_type, "lib\\vquic", arr[val]);\ 386 }\ 387 else if($$0 == "CURL_LIB_VQUIC_H_FILES") {\ 388 split(lib_vquic_hdrs, arr);\ 389 for(val in arr) gen_element(proj_type, "lib\\vquic", arr[val]);\ 390 }\ 391 else if($$0 == "CURL_LIB_VSSH_C_FILES") {\ 392 split(lib_vssh_srcs, arr);\ 393 for(val in arr) gen_element(proj_type, "lib\\vssh", arr[val]);\ 394 }\ 395 else if($$0 == "CURL_LIB_VSSH_H_FILES") {\ 396 split(lib_vssh_hdrs, arr);\ 397 for(val in arr) gen_element(proj_type, "lib\\vssh", arr[val]);\ 398 }\ 399 else if($$0 == "CURL_LIB_VTLS_C_FILES") {\ 400 split(lib_vtls_srcs, arr);\ 401 for(val in arr) gen_element(proj_type, "lib\\vtls", arr[val]);\ 402 }\ 403 else if($$0 == "CURL_LIB_VTLS_H_FILES") {\ 404 split(lib_vtls_hdrs, arr);\ 405 for(val in arr) gen_element(proj_type, "lib\\vtls", arr[val]);\ 406 }\ 407 else if($$0 == "CURL_SRC_C_FILES") {\ 408 split(src_srcs, arr);\ 409 for(val in arr) gen_element(proj_type, "src", arr[val]);\ 410 }\ 411 else if($$0 == "CURL_SRC_H_FILES") {\ 412 split(src_hdrs, arr);\ 413 for(val in arr) gen_element(proj_type, "src", arr[val]);\ 414 }\ 415 else if($$0 == "CURL_SRC_RC_FILES") {\ 416 split(src_rc, arr);\ 417 for(val in arr) gen_element(proj_type, "src", arr[val]);\ 418 }\ 419 else if($$0 == "CURL_SRC_X_C_FILES") {\ 420 split(src_x_srcs, arr);\ 421 for(val in arr) {\ 422 sub(/..\/lib\//, "", arr[val]);\ 423 gen_element(proj_type, "lib", arr[val]);\ 424 }\ 425 }\ 426 else if($$0 == "CURL_SRC_X_H_FILES") {\ 427 split(src_x_hdrs, arr);\ 428 for(val in arr) {\ 429 sub(/..\/lib\//, "", arr[val]);\ 430 gen_element(proj_type, "lib", arr[val]);\ 431 }\ 432 }\ 433 else\ 434 printf("%s\r\n", $$0);\ 435}';\ 436 \ 437 echo "generating '$(VC14_LIBVCXPROJ)'"; \ 438 awk -v proj_type=vcxproj \ 439 -v lib_srcs="$$sorted_lib_srcs" \ 440 -v lib_hdrs="$$sorted_lib_hdrs" \ 441 -v lib_rc="$$win32_lib_rc" \ 442 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 443 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 444 -v lib_vquic_srcs="$$sorted_lib_vquic_srcs" \ 445 -v lib_vquic_hdrs="$$sorted_lib_vquic_hdrs" \ 446 -v lib_vssh_srcs="$$sorted_lib_vssh_srcs" \ 447 -v lib_vssh_hdrs="$$sorted_lib_vssh_hdrs" \ 448 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 449 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 450 "$$awk_code" $(srcdir)/$(VC14_LIBTMPL) > $(VC14_LIBVCXPROJ) || { exit 1; }; \ 451 \ 452 echo "generating '$(VC14_SRCVCXPROJ)'"; \ 453 awk -v proj_type=vcxproj \ 454 -v src_srcs="$$sorted_src_srcs" \ 455 -v src_hdrs="$$sorted_src_hdrs" \ 456 -v src_rc="$$win32_src_rc" \ 457 -v src_x_srcs="$$sorted_src_x_srcs" \ 458 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 459 "$$awk_code" $(srcdir)/$(VC14_SRCTMPL) > $(VC14_SRCVCXPROJ) || { exit 1; }; \ 460 \ 461 echo "generating '$(VC14_10_LIBVCXPROJ)'"; \ 462 awk -v proj_type=vcxproj \ 463 -v lib_srcs="$$sorted_lib_srcs" \ 464 -v lib_hdrs="$$sorted_lib_hdrs" \ 465 -v lib_rc="$$win32_lib_rc" \ 466 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 467 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 468 -v lib_vquic_srcs="$$sorted_lib_vquic_srcs" \ 469 -v lib_vquic_hdrs="$$sorted_lib_vquic_hdrs" \ 470 -v lib_vssh_srcs="$$sorted_lib_vssh_srcs" \ 471 -v lib_vssh_hdrs="$$sorted_lib_vssh_hdrs" \ 472 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 473 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 474 "$$awk_code" $(srcdir)/$(VC14_10_LIBTMPL) > $(VC14_10_LIBVCXPROJ) || { exit 1; }; \ 475 \ 476 echo "generating '$(VC14_10_SRCVCXPROJ)'"; \ 477 awk -v proj_type=vcxproj \ 478 -v src_srcs="$$sorted_src_srcs" \ 479 -v src_hdrs="$$sorted_src_hdrs" \ 480 -v src_rc="$$win32_src_rc" \ 481 -v src_x_srcs="$$sorted_src_x_srcs" \ 482 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 483 "$$awk_code" $(srcdir)/$(VC14_10_SRCTMPL) > $(VC14_10_SRCVCXPROJ) || { exit 1; }; \ 484 \ 485 echo "generating '$(VC14_20_LIBVCXPROJ)'"; \ 486 awk -v proj_type=vcxproj \ 487 -v lib_srcs="$$sorted_lib_srcs" \ 488 -v lib_hdrs="$$sorted_lib_hdrs" \ 489 -v lib_rc="$$win32_lib_rc" \ 490 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 491 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 492 -v lib_vquic_srcs="$$sorted_lib_vquic_srcs" \ 493 -v lib_vquic_hdrs="$$sorted_lib_vquic_hdrs" \ 494 -v lib_vssh_srcs="$$sorted_lib_vssh_srcs" \ 495 -v lib_vssh_hdrs="$$sorted_lib_vssh_hdrs" \ 496 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 497 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 498 "$$awk_code" $(srcdir)/$(VC14_20_LIBTMPL) > $(VC14_20_LIBVCXPROJ) || { exit 1; }; \ 499 \ 500 echo "generating '$(VC14_20_SRCVCXPROJ)'"; \ 501 awk -v proj_type=vcxproj \ 502 -v src_srcs="$$sorted_src_srcs" \ 503 -v src_hdrs="$$sorted_src_hdrs" \ 504 -v src_rc="$$win32_src_rc" \ 505 -v src_x_srcs="$$sorted_src_x_srcs" \ 506 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 507 "$$awk_code" $(srcdir)/$(VC14_20_SRCTMPL) > $(VC14_20_SRCVCXPROJ) || { exit 1; }; \ 508 \ 509 echo "generating '$(VC14_30_LIBVCXPROJ)'"; \ 510 awk -v proj_type=vcxproj \ 511 -v lib_srcs="$$sorted_lib_srcs" \ 512 -v lib_hdrs="$$sorted_lib_hdrs" \ 513 -v lib_rc="$$win32_lib_rc" \ 514 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 515 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 516 -v lib_vquic_srcs="$$sorted_lib_vquic_srcs" \ 517 -v lib_vquic_hdrs="$$sorted_lib_vquic_hdrs" \ 518 -v lib_vssh_srcs="$$sorted_lib_vssh_srcs" \ 519 -v lib_vssh_hdrs="$$sorted_lib_vssh_hdrs" \ 520 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 521 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 522 "$$awk_code" $(srcdir)/$(VC14_30_LIBTMPL) > $(VC14_30_LIBVCXPROJ) || { exit 1; }; \ 523 \ 524 echo "generating '$(VC14_30_SRCVCXPROJ)'"; \ 525 awk -v proj_type=vcxproj \ 526 -v src_srcs="$$sorted_src_srcs" \ 527 -v src_hdrs="$$sorted_src_hdrs" \ 528 -v src_rc="$$win32_src_rc" \ 529 -v src_x_srcs="$$sorted_src_x_srcs" \ 530 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 531 "$$awk_code" $(srcdir)/$(VC14_30_SRCTMPL) > $(VC14_30_SRCVCXPROJ) || { exit 1; };) 532 533tidy: 534 (cd src && $(MAKE) tidy) 535 (cd lib && $(MAKE) tidy) 536