1#*************************************************************************** 2# _ _ ____ _ 3# Project ___| | | | _ \| | 4# / __| | | | |_) | | 5# | (__| |_| | _ <| |___ 6# \___|\___/|_| \_\_____| 7# 8# Copyright (C) 1998 - 2018, 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.haxx.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########################################################################### 22 23AUTOMAKE_OPTIONS = foreign 24 25ACLOCAL_AMFLAGS = -I m4 26 27CMAKE_DIST = CMakeLists.txt CMake/CMakeConfigurableFile.in \ 28 CMake/CurlTests.c CMake/FindGSS.cmake CMake/OtherTests.cmake \ 29 CMake/Platforms/WindowsCache.cmake CMake/Utilities.cmake \ 30 CMake/Macros.cmake \ 31 CMake/CurlSymbolHiding.cmake CMake/FindCARES.cmake \ 32 CMake/FindLibSSH2.cmake CMake/FindNGHTTP2.cmake \ 33 CMake/FindMbedTLS.cmake CMake/cmake_uninstall.cmake.in \ 34 CMake/curl-config.cmake.in 35 36VC6_LIBTMPL = projects/Windows/VC6/lib/libcurl.tmpl 37VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp.dist 38VC6_LIBDSP_DEPS = $(VC6_LIBTMPL) Makefile.am lib/Makefile.inc 39VC6_SRCTMPL = projects/Windows/VC6/src/curl.tmpl 40VC6_SRCDSP = projects/Windows/VC6/src/curl.dsp.dist 41VC6_SRCDSP_DEPS = $(VC6_SRCTMPL) Makefile.am src/Makefile.inc 42 43VC7_LIBTMPL = projects/Windows/VC7/lib/libcurl.tmpl 44VC7_LIBVCPROJ = projects/Windows/VC7/lib/libcurl.vcproj.dist 45VC7_LIBVCPROJ_DEPS = $(VC7_LIBTMPL) Makefile.am lib/Makefile.inc 46VC7_SRCTMPL = projects/Windows/VC7/src/curl.tmpl 47VC7_SRCVCPROJ = projects/Windows/VC7/src/curl.vcproj.dist 48VC7_SRCVCPROJ_DEPS = $(VC7_SRCTMPL) Makefile.am src/Makefile.inc 49 50VC71_LIBTMPL = projects/Windows/VC7.1/lib/libcurl.tmpl 51VC71_LIBVCPROJ = projects/Windows/VC7.1/lib/libcurl.vcproj.dist 52VC71_LIBVCPROJ_DEPS = $(VC71_LIBTMPL) Makefile.am lib/Makefile.inc 53VC71_SRCTMPL = projects/Windows/VC7.1/src/curl.tmpl 54VC71_SRCVCPROJ = projects/Windows/VC7.1/src/curl.vcproj.dist 55VC71_SRCVCPROJ_DEPS = $(VC71_SRCTMPL) Makefile.am src/Makefile.inc 56 57VC8_LIBTMPL = projects/Windows/VC8/lib/libcurl.tmpl 58VC8_LIBVCPROJ = projects/Windows/VC8/lib/libcurl.vcproj.dist 59VC8_LIBVCPROJ_DEPS = $(VC8_LIBTMPL) Makefile.am lib/Makefile.inc 60VC8_SRCTMPL = projects/Windows/VC8/src/curl.tmpl 61VC8_SRCVCPROJ = projects/Windows/VC8/src/curl.vcproj.dist 62VC8_SRCVCPROJ_DEPS = $(VC8_SRCTMPL) Makefile.am src/Makefile.inc 63 64VC9_LIBTMPL = projects/Windows/VC9/lib/libcurl.tmpl 65VC9_LIBVCPROJ = projects/Windows/VC9/lib/libcurl.vcproj.dist 66VC9_LIBVCPROJ_DEPS = $(VC9_LIBTMPL) Makefile.am lib/Makefile.inc 67VC9_SRCTMPL = projects/Windows/VC9/src/curl.tmpl 68VC9_SRCVCPROJ = projects/Windows/VC9/src/curl.vcproj.dist 69VC9_SRCVCPROJ_DEPS = $(VC9_SRCTMPL) Makefile.am src/Makefile.inc 70 71VC10_LIBTMPL = projects/Windows/VC10/lib/libcurl.tmpl 72VC10_LIBVCXPROJ = projects/Windows/VC10/lib/libcurl.vcxproj.dist 73VC10_LIBVCXPROJ_DEPS = $(VC10_LIBTMPL) Makefile.am lib/Makefile.inc 74VC10_SRCTMPL = projects/Windows/VC10/src/curl.tmpl 75VC10_SRCVCXPROJ = projects/Windows/VC10/src/curl.vcxproj.dist 76VC10_SRCVCXPROJ_DEPS = $(VC10_SRCTMPL) Makefile.am src/Makefile.inc 77 78VC11_LIBTMPL = projects/Windows/VC11/lib/libcurl.tmpl 79VC11_LIBVCXPROJ = projects/Windows/VC11/lib/libcurl.vcxproj.dist 80VC11_LIBVCXPROJ_DEPS = $(VC11_LIBTMPL) Makefile.am lib/Makefile.inc 81VC11_SRCTMPL = projects/Windows/VC11/src/curl.tmpl 82VC11_SRCVCXPROJ = projects/Windows/VC11/src/curl.vcxproj.dist 83VC11_SRCVCXPROJ_DEPS = $(VC11_SRCTMPL) Makefile.am src/Makefile.inc 84 85VC12_LIBTMPL = projects/Windows/VC12/lib/libcurl.tmpl 86VC12_LIBVCXPROJ = projects/Windows/VC12/lib/libcurl.vcxproj.dist 87VC12_LIBVCXPROJ_DEPS = $(VC12_LIBTMPL) Makefile.am lib/Makefile.inc 88VC12_SRCTMPL = projects/Windows/VC12/src/curl.tmpl 89VC12_SRCVCXPROJ = projects/Windows/VC12/src/curl.vcxproj.dist 90VC12_SRCVCXPROJ_DEPS = $(VC12_SRCTMPL) Makefile.am src/Makefile.inc 91 92VC14_LIBTMPL = projects/Windows/VC14/lib/libcurl.tmpl 93VC14_LIBVCXPROJ = projects/Windows/VC14/lib/libcurl.vcxproj.dist 94VC14_LIBVCXPROJ_DEPS = $(VC14_LIBTMPL) Makefile.am lib/Makefile.inc 95VC14_SRCTMPL = projects/Windows/VC14/src/curl.tmpl 96VC14_SRCVCXPROJ = projects/Windows/VC14/src/curl.vcxproj.dist 97VC14_SRCVCXPROJ_DEPS = $(VC14_SRCTMPL) Makefile.am src/Makefile.inc 98 99VC15_LIBTMPL = projects/Windows/VC15/lib/libcurl.tmpl 100VC15_LIBVCXPROJ = projects/Windows/VC15/lib/libcurl.vcxproj.dist 101VC15_LIBVCXPROJ_DEPS = $(VC15_LIBTMPL) Makefile.am lib/Makefile.inc 102VC15_SRCTMPL = projects/Windows/VC15/src/curl.tmpl 103VC15_SRCVCXPROJ = projects/Windows/VC15/src/curl.vcxproj.dist 104VC15_SRCVCXPROJ_DEPS = $(VC15_SRCTMPL) Makefile.am src/Makefile.inc 105 106VC_DIST = projects/README \ 107 projects/build-openssl.bat \ 108 projects/build-wolfssl.bat \ 109 projects/checksrc.bat \ 110 projects/Windows/VC6/curl-all.dsw \ 111 projects/Windows/VC6/lib/libcurl.dsw \ 112 projects/Windows/VC6/src/curl.dsw \ 113 projects/Windows/VC7/curl-all.sln \ 114 projects/Windows/VC7/lib/libcurl.sln \ 115 projects/Windows/VC7/src/curl.sln \ 116 projects/Windows/VC7.1/curl-all.sln \ 117 projects/Windows/VC7.1/lib/libcurl.sln \ 118 projects/Windows/VC7.1/src/curl.sln \ 119 projects/Windows/VC8/curl-all.sln \ 120 projects/Windows/VC8/lib/libcurl.sln \ 121 projects/Windows/VC8/src/curl.sln \ 122 projects/Windows/VC9/curl-all.sln \ 123 projects/Windows/VC9/lib/libcurl.sln \ 124 projects/Windows/VC9/src/curl.sln \ 125 projects/Windows/VC10/curl-all.sln \ 126 projects/Windows/VC10/lib/libcurl.sln \ 127 projects/Windows/VC10/lib/libcurl.vcxproj.filters \ 128 projects/Windows/VC10/src/curl.sln \ 129 projects/Windows/VC10/src/curl.vcxproj.filters \ 130 projects/Windows/VC11/curl-all.sln \ 131 projects/Windows/VC11/lib/libcurl.sln \ 132 projects/Windows/VC11/lib/libcurl.vcxproj.filters \ 133 projects/Windows/VC11/src/curl.sln \ 134 projects/Windows/VC11/src/curl.vcxproj.filters \ 135 projects/Windows/VC12/curl-all.sln \ 136 projects/Windows/VC12/lib/libcurl.sln \ 137 projects/Windows/VC12/lib/libcurl.vcxproj.filters \ 138 projects/Windows/VC12/src/curl.sln \ 139 projects/Windows/VC12/src/curl.vcxproj.filters \ 140 projects/Windows/VC14/curl-all.sln \ 141 projects/Windows/VC14/lib/libcurl.sln \ 142 projects/Windows/VC14/lib/libcurl.vcxproj.filters \ 143 projects/Windows/VC14/src/curl.sln \ 144 projects/Windows/VC14/src/curl.vcxproj.filters \ 145 projects/Windows/VC15/curl-all.sln \ 146 projects/Windows/VC15/lib/libcurl.sln \ 147 projects/Windows/VC15/lib/libcurl.vcxproj.filters \ 148 projects/Windows/VC15/src/curl.sln \ 149 projects/Windows/VC15/src/curl.vcxproj.filters \ 150 projects/generate.bat \ 151 projects/wolfssl_options.h \ 152 projects/wolfssl_override.props 153 154WINBUILD_DIST = winbuild/BUILD.WINDOWS.txt winbuild/gen_resp_file.bat \ 155 winbuild/MakefileBuild.vc winbuild/Makefile.vc 156 157PLAN9_DIST = plan9/include/mkfile \ 158 plan9/include/mkfile \ 159 plan9/mkfile.proto \ 160 plan9/mkfile \ 161 plan9/BUILD.PLAN9.txt \ 162 plan9/lib/mkfile.inc \ 163 plan9/lib/mkfile \ 164 plan9/src/mkfile.inc \ 165 plan9/src/mkfile 166 167EXTRA_DIST = CHANGES COPYING maketgz Makefile.dist curl-config.in \ 168 RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework \ 169 scripts/updatemanpages.pl $(CMAKE_DIST) \ 170 $(VC_DIST) $(WINBUILD_DIST) $(PLAN9_DIST) \ 171 lib/libcurl.vers.in buildconf.bat scripts/coverage.sh scripts/completion.pl 172 173CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \ 174 $(VC71_LIBVCPROJ) $(VC71_SRCVCPROJ) $(VC8_LIBVCPROJ) $(VC8_SRCVCPROJ) \ 175 $(VC9_LIBVCPROJ) $(VC9_SRCVCPROJ) $(VC10_LIBVCXPROJ) $(VC10_SRCVCXPROJ) \ 176 $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ) \ 177 $(VC14_LIBVCXPROJ) $(VC14_SRCVCXPROJ) $(VC15_LIBVCXPROJ) $(VC15_SRCVCXPROJ) 178 179bin_SCRIPTS = curl-config 180 181SUBDIRS = lib src 182DIST_SUBDIRS = $(SUBDIRS) tests packages scripts include docs 183 184pkgconfigdir = $(libdir)/pkgconfig 185pkgconfig_DATA = libcurl.pc 186 187# List of files required to generate VC IDE .dsp, .vcproj and .vcxproj files 188include lib/Makefile.inc 189include src/Makefile.inc 190 191dist-hook: 192 rm -rf $(top_builddir)/tests/log 193 find $(distdir) -name "*.dist" -exec rm {} \; 194 (distit=`find $(srcdir) -name "*.dist" | grep -v ./ares/`; \ 195 for file in $$distit; do \ 196 strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \ 197 cp -p $$file $(distdir)$$strip; \ 198 done) 199 200html: 201 cd docs && $(MAKE) html 202 203pdf: 204 cd docs && $(MAKE) pdf 205 206check: test examples check-docs 207 208if CROSSCOMPILING 209test-full: test 210test-torture: test 211 212test: 213 @echo "NOTICE: we can't run the tests when cross-compiling!" 214 215else 216 217test: 218 @(cd tests; $(MAKE) all quiet-test) 219 220test-full: 221 @(cd tests; $(MAKE) all full-test) 222 223test-nonflaky: 224 @(cd tests; $(MAKE) all nonflaky-test) 225 226test-torture: 227 @(cd tests; $(MAKE) all torture-test) 228 229test-event: 230 @(cd tests; $(MAKE) all event-test) 231 232test-am: 233 @(cd tests; $(MAKE) all am-test) 234 235endif 236 237examples: 238 @(cd docs/examples; $(MAKE) check) 239 240check-docs: 241 @(cd docs/libcurl; $(MAKE) check) 242 243# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros 244# must contain the following line: 245# %_topdir /home/loic/local/rpm 246# and that /home/loic/local/rpm contains the directory SOURCES, BUILD etc. 247# 248# cd /home/loic/local/rpm ; mkdir -p SOURCES BUILD RPMS/i386 SPECS SRPMS 249# 250# If additional configure flags are needed to build the package, add the 251# following in ~/.rpmmacros 252# %configure CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix} ${AM_CONFIGFLAGS} 253# and run make rpm in the following way: 254# AM_CONFIGFLAGS='--with-uri=/home/users/loic/local/RedHat-6.2' make rpm 255# 256 257rpms: 258 $(MAKE) RPMDIST=curl rpm 259 $(MAKE) RPMDIST=curl-ssl rpm 260 261rpm: 262 RPM_TOPDIR=`rpm --showrc | $(PERL) -n -e 'print if(s/.*_topdir\s+(.*)/$$1/)'` ; \ 263 cp $(srcdir)/packages/Linux/RPM/$(RPMDIST).spec $$RPM_TOPDIR/SPECS ; \ 264 cp $(PACKAGE)-$(VERSION).tar.gz $$RPM_TOPDIR/SOURCES ; \ 265 rpm -ba --clean --rmsource $$RPM_TOPDIR/SPECS/$(RPMDIST).spec ; \ 266 mv $$RPM_TOPDIR/RPMS/i386/$(RPMDIST)-*.rpm . ; \ 267 mv $$RPM_TOPDIR/SRPMS/$(RPMDIST)-*.src.rpm . 268 269# 270# Build a Solaris pkgadd format file 271# run 'make pkgadd' once you've done './configure' and 'make' to make a Solaris pkgadd format 272# file (which ends up back in this directory). 273# The pkgadd file is in 'pkgtrans' format, so to install on Solaris, do 274# pkgadd -d ./HAXXcurl-* 275# 276 277# gak - libtool requires an absolute directory, hence the pwd below... 278pkgadd: 279 umask 022 ; \ 280 $(MAKE) install DESTDIR=`/bin/pwd`/packages/Solaris/root ; \ 281 cat COPYING > $(srcdir)/packages/Solaris/copyright ; \ 282 cd $(srcdir)/packages/Solaris && $(MAKE) package 283 284# 285# Build a cygwin binary tarball installation file 286# resulting .tar.bz2 file will end up at packages/Win32/cygwin 287cygwinbin: 288 $(MAKE) -C packages/Win32/cygwin cygwinbin 289 290# We extend the standard install with a custom hook: 291install-data-hook: 292 cd include && $(MAKE) install 293 cd docs && $(MAKE) install 294 cd docs/libcurl && $(MAKE) install 295 296# We extend the standard uninstall with a custom hook: 297uninstall-hook: 298 cd include && $(MAKE) uninstall 299 cd docs && $(MAKE) uninstall 300 cd docs/libcurl && $(MAKE) uninstall 301 302ca-bundle: lib/mk-ca-bundle.pl 303 @echo "generating a fresh ca-bundle.crt" 304 @perl $< -b -l -u lib/ca-bundle.crt 305 306ca-firefox: lib/firefox-db2pem.sh 307 @echo "generating a fresh ca-bundle.crt" 308 ./lib/firefox-db2pem.sh lib/ca-bundle.crt 309 310checksrc: 311 cd lib && $(MAKE) checksrc 312 cd src && $(MAKE) checksrc 313 cd tests && $(MAKE) checksrc 314 cd include/curl && $(MAKE) checksrc 315 cd docs/examples && $(MAKE) checksrc 316 317.PHONY: vc-ide 318 319vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS) \ 320 $(VC7_SRCVCPROJ_DEPS) $(VC71_LIBVCPROJ_DEPS) $(VC71_SRCVCPROJ_DEPS) \ 321 $(VC8_LIBVCPROJ_DEPS) $(VC8_SRCVCPROJ_DEPS) $(VC9_LIBVCPROJ_DEPS) \ 322 $(VC9_SRCVCPROJ_DEPS) $(VC10_LIBVCXPROJ_DEPS) $(VC10_SRCVCXPROJ_DEPS) \ 323 $(VC11_LIBVCXPROJ_DEPS) $(VC11_SRCVCXPROJ_DEPS) $(VC12_LIBVCXPROJ_DEPS) \ 324 $(VC12_SRCVCXPROJ_DEPS) $(VC14_LIBVCXPROJ_DEPS) $(VC14_SRCVCXPROJ_DEPS) \ 325 $(VC15_LIBVCXPROJ_DEPS) $(VC15_SRCVCXPROJ_DEPS) 326 @(win32_lib_srcs='$(LIB_CFILES)'; \ 327 win32_lib_hdrs='$(LIB_HFILES) config-win32.h'; \ 328 win32_lib_rc='$(LIB_RCFILES)'; \ 329 win32_lib_vauth_srcs='$(LIB_VAUTH_CFILES)'; \ 330 win32_lib_vauth_hdrs='$(LIB_VAUTH_HFILES)'; \ 331 win32_lib_vtls_srcs='$(LIB_VTLS_CFILES)'; \ 332 win32_lib_vtls_hdrs='$(LIB_VTLS_HFILES)'; \ 333 win32_src_srcs='$(CURL_CFILES)'; \ 334 win32_src_hdrs='$(CURL_HFILES)'; \ 335 win32_src_rc='$(CURL_RCFILES)'; \ 336 win32_src_x_srcs='$(CURLX_CFILES)'; \ 337 win32_src_x_hdrs='$(CURLX_HFILES) ../lib/config-win32.h'; \ 338 \ 339 sorted_lib_srcs=`for file in $$win32_lib_srcs; do echo $$file; done | sort`; \ 340 sorted_lib_hdrs=`for file in $$win32_lib_hdrs; do echo $$file; done | sort`; \ 341 sorted_lib_vauth_srcs=`for file in $$win32_lib_vauth_srcs; do echo $$file; done | sort`; \ 342 sorted_lib_vauth_hdrs=`for file in $$win32_lib_vauth_hdrs; do echo $$file; done | sort`; \ 343 sorted_lib_vtls_srcs=`for file in $$win32_lib_vtls_srcs; do echo $$file; done | sort`; \ 344 sorted_lib_vtls_hdrs=`for file in $$win32_lib_vtls_hdrs; do echo $$file; done | sort`; \ 345 sorted_src_srcs=`for file in $$win32_src_srcs; do echo $$file; done | sort`; \ 346 sorted_src_hdrs=`for file in $$win32_src_hdrs; do echo $$file; done | sort`; \ 347 sorted_src_x_srcs=`for file in $$win32_src_x_srcs; do echo $$file; done | sort`; \ 348 sorted_src_x_hdrs=`for file in $$win32_src_x_hdrs; do echo $$file; done | sort`; \ 349 \ 350 awk_code='\ 351function gen_element(type, dir, file)\ 352{\ 353 sub(/vauth\//, "", file);\ 354 sub(/vtls\//, "", file);\ 355\ 356 spaces=" ";\ 357 if(dir == "lib\\vauth" || dir == "lib\\vtls")\ 358 tabs=" ";\ 359 else\ 360 tabs=" ";\ 361\ 362 if(type == "dsp") {\ 363 printf("# Begin Source File\r\n");\ 364 printf("\r\n");\ 365 printf("SOURCE=..\\..\\..\\..\\%s\\%s\r\n", dir, file);\ 366 printf("# End Source File\r\n");\ 367 }\ 368 else if(type == "vcproj1") {\ 369 printf("%s<File\r\n", tabs);\ 370 printf("%s RelativePath=\"..\\..\\..\\..\\%s\\%s\">\r\n",\ 371 tabs, dir, file);\ 372 printf("%s</File>\r\n", tabs);\ 373 }\ 374 else if(type == "vcproj2") {\ 375 printf("%s<File\r\n", tabs);\ 376 printf("%s RelativePath=\"..\\..\\..\\..\\%s\\%s\"\r\n",\ 377 tabs, dir, file);\ 378 printf("%s>\r\n", tabs);\ 379 printf("%s</File>\r\n", tabs);\ 380 }\ 381 else if(type == "vcxproj") {\ 382 i = index(file, ".");\ 383 ext = substr(file, i == 0 ? 0 : i + 1);\ 384\ 385 if(ext == "c")\ 386 printf("%s<ClCompile Include=\"..\\..\\..\\..\\%s\\%s\" />\r\n",\ 387 spaces, dir, file);\ 388 else if(ext == "h")\ 389 printf("%s<ClInclude Include=\"..\\..\\..\\..\\%s\\%s\" />\r\n",\ 390 spaces, dir, file);\ 391 else if(ext == "rc")\ 392 printf("%s<ResourceCompile Include=\"..\\..\\..\\..\\%s\\%s\" />\r\n",\ 393 spaces, dir, file);\ 394 }\ 395}\ 396\ 397{\ 398\ 399 if($$0 == "CURL_LIB_C_FILES") {\ 400 split(lib_srcs, arr);\ 401 for(val in arr) gen_element(proj_type, "lib", arr[val]);\ 402 }\ 403 else if($$0 == "CURL_LIB_H_FILES") {\ 404 split(lib_hdrs, arr);\ 405 for(val in arr) gen_element(proj_type, "lib", arr[val]);\ 406 }\ 407 else if($$0 == "CURL_LIB_RC_FILES") {\ 408 split(lib_rc, arr);\ 409 for(val in arr) gen_element(proj_type, "lib", arr[val]);\ 410 }\ 411 else if($$0 == "CURL_LIB_VAUTH_C_FILES") {\ 412 split(lib_vauth_srcs, arr);\ 413 for(val in arr) gen_element(proj_type, "lib\\vauth", arr[val]);\ 414 }\ 415 else if($$0 == "CURL_LIB_VAUTH_H_FILES") {\ 416 split(lib_vauth_hdrs, arr);\ 417 for(val in arr) gen_element(proj_type, "lib\\vauth", arr[val]);\ 418 }\ 419 else if($$0 == "CURL_LIB_VTLS_C_FILES") {\ 420 split(lib_vtls_srcs, arr);\ 421 for(val in arr) gen_element(proj_type, "lib\\vtls", arr[val]);\ 422 }\ 423 else if($$0 == "CURL_LIB_VTLS_H_FILES") {\ 424 split(lib_vtls_hdrs, arr);\ 425 for(val in arr) gen_element(proj_type, "lib\\vtls", arr[val]);\ 426 }\ 427 else if($$0 == "CURL_SRC_C_FILES") {\ 428 split(src_srcs, arr);\ 429 for(val in arr) gen_element(proj_type, "src", arr[val]);\ 430 }\ 431 else if($$0 == "CURL_SRC_H_FILES") {\ 432 split(src_hdrs, arr);\ 433 for(val in arr) gen_element(proj_type, "src", arr[val]);\ 434 }\ 435 else if($$0 == "CURL_SRC_RC_FILES") {\ 436 split(src_rc, arr);\ 437 for(val in arr) gen_element(proj_type, "src", arr[val]);\ 438 }\ 439 else if($$0 == "CURL_SRC_X_C_FILES") {\ 440 split(src_x_srcs, arr);\ 441 for(val in arr) {\ 442 sub(/..\/lib\//, "", arr[val]);\ 443 gen_element(proj_type, "lib", arr[val]);\ 444 }\ 445 }\ 446 else if($$0 == "CURL_SRC_X_H_FILES") {\ 447 split(src_x_hdrs, arr);\ 448 for(val in arr) {\ 449 sub(/..\/lib\//, "", arr[val]);\ 450 gen_element(proj_type, "lib", arr[val]);\ 451 }\ 452 }\ 453 else\ 454 printf("%s\r\n", $$0);\ 455}';\ 456 \ 457 echo "generating '$(VC6_LIBDSP)'"; \ 458 awk -v proj_type=dsp \ 459 -v lib_srcs="$$sorted_lib_srcs" \ 460 -v lib_hdrs="$$sorted_lib_hdrs" \ 461 -v lib_rc="$$win32_lib_rc" \ 462 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 463 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 464 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 465 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 466 "$$awk_code" $(srcdir)/$(VC6_LIBTMPL) > $(VC6_LIBDSP) || { exit 1; }; \ 467 \ 468 echo "generating '$(VC6_SRCDSP)'"; \ 469 awk -v proj_type=dsp \ 470 -v src_srcs="$$sorted_src_srcs" \ 471 -v src_hdrs="$$sorted_src_hdrs" \ 472 -v src_rc="$$win32_src_rc" \ 473 -v src_x_srcs="$$sorted_src_x_srcs" \ 474 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 475 "$$awk_code" $(srcdir)/$(VC6_SRCTMPL) > $(VC6_SRCDSP) || { exit 1; }; \ 476 \ 477 echo "generating '$(VC7_LIBVCPROJ)'"; \ 478 awk -v proj_type=vcproj1 \ 479 -v lib_srcs="$$sorted_lib_srcs" \ 480 -v lib_hdrs="$$sorted_lib_hdrs" \ 481 -v lib_rc="$$win32_lib_rc" \ 482 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 483 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 484 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 485 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 486 "$$awk_code" $(srcdir)/$(VC7_LIBTMPL) > $(VC7_LIBVCPROJ) || { exit 1; }; \ 487 \ 488 echo "generating '$(VC7_SRCVCPROJ)'"; \ 489 awk -v proj_type=vcproj1 \ 490 -v src_srcs="$$sorted_src_srcs" \ 491 -v src_hdrs="$$sorted_src_hdrs" \ 492 -v src_rc="$$win32_src_rc" \ 493 -v src_x_srcs="$$sorted_src_x_srcs" \ 494 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 495 "$$awk_code" $(srcdir)/$(VC7_SRCTMPL) > $(VC7_SRCVCPROJ) || { exit 1; }; \ 496 \ 497 echo "generating '$(VC71_LIBVCPROJ)'"; \ 498 awk -v proj_type=vcproj1 \ 499 -v lib_srcs="$$sorted_lib_srcs" \ 500 -v lib_hdrs="$$sorted_lib_hdrs" \ 501 -v lib_rc="$$win32_lib_rc" \ 502 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 503 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 504 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 505 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 506 "$$awk_code" $(srcdir)/$(VC71_LIBTMPL) > $(VC71_LIBVCPROJ) || { exit 1; }; \ 507 \ 508 echo "generating '$(VC71_SRCVCPROJ)'"; \ 509 awk -v proj_type=vcproj1 \ 510 -v src_srcs="$$sorted_src_srcs" \ 511 -v src_hdrs="$$sorted_src_hdrs" \ 512 -v src_rc="$$win32_src_rc" \ 513 -v src_x_srcs="$$sorted_src_x_srcs" \ 514 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 515 "$$awk_code" $(srcdir)/$(VC71_SRCTMPL) > $(VC71_SRCVCPROJ) || { exit 1; }; \ 516 \ 517 echo "generating '$(VC8_LIBVCPROJ)'"; \ 518 awk -v proj_type=vcproj2 \ 519 -v lib_srcs="$$sorted_lib_srcs" \ 520 -v lib_hdrs="$$sorted_lib_hdrs" \ 521 -v lib_rc="$$win32_lib_rc" \ 522 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 523 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 524 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 525 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 526 "$$awk_code" $(srcdir)/$(VC8_LIBTMPL) > $(VC8_LIBVCPROJ) || { exit 1; }; \ 527 \ 528 echo "generating '$(VC8_SRCVCPROJ)'"; \ 529 awk -v proj_type=vcproj2 \ 530 -v src_srcs="$$sorted_src_srcs" \ 531 -v src_hdrs="$$sorted_src_hdrs" \ 532 -v src_rc="$$win32_src_rc" \ 533 -v src_x_srcs="$$sorted_src_x_srcs" \ 534 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 535 "$$awk_code" $(srcdir)/$(VC8_SRCTMPL) > $(VC8_SRCVCPROJ) || { exit 1; }; \ 536 \ 537 echo "generating '$(VC9_LIBVCPROJ)'"; \ 538 awk -v proj_type=vcproj2 \ 539 -v lib_srcs="$$sorted_lib_srcs" \ 540 -v lib_hdrs="$$sorted_lib_hdrs" \ 541 -v lib_rc="$$win32_lib_rc" \ 542 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 543 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 544 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 545 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 546 "$$awk_code" $(srcdir)/$(VC9_LIBTMPL) > $(VC9_LIBVCPROJ) || { exit 1; }; \ 547 \ 548 echo "generating '$(VC9_SRCVCPROJ)'"; \ 549 awk -v proj_type=vcproj2 \ 550 -v src_srcs="$$sorted_src_srcs" \ 551 -v src_hdrs="$$sorted_src_hdrs" \ 552 -v src_rc="$$win32_src_rc" \ 553 -v src_x_srcs="$$sorted_src_x_srcs" \ 554 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 555 "$$awk_code" $(srcdir)/$(VC9_SRCTMPL) > $(VC9_SRCVCPROJ) || { exit 1; }; \ 556 \ 557 echo "generating '$(VC10_LIBVCXPROJ)'"; \ 558 awk -v proj_type=vcxproj \ 559 -v lib_srcs="$$sorted_lib_srcs" \ 560 -v lib_hdrs="$$sorted_lib_hdrs" \ 561 -v lib_rc="$$win32_lib_rc" \ 562 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 563 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 564 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 565 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 566 "$$awk_code" $(srcdir)/$(VC10_LIBTMPL) > $(VC10_LIBVCXPROJ) || { exit 1; }; \ 567 \ 568 echo "generating '$(VC10_SRCVCXPROJ)'"; \ 569 awk -v proj_type=vcxproj \ 570 -v src_srcs="$$sorted_src_srcs" \ 571 -v src_hdrs="$$sorted_src_hdrs" \ 572 -v src_rc="$$win32_src_rc" \ 573 -v src_x_srcs="$$sorted_src_x_srcs" \ 574 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 575 "$$awk_code" $(srcdir)/$(VC10_SRCTMPL) > $(VC10_SRCVCXPROJ) || { exit 1; }; \ 576 \ 577 echo "generating '$(VC11_LIBVCXPROJ)'"; \ 578 awk -v proj_type=vcxproj \ 579 -v lib_srcs="$$sorted_lib_srcs" \ 580 -v lib_hdrs="$$sorted_lib_hdrs" \ 581 -v lib_rc="$$win32_lib_rc" \ 582 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 583 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 584 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 585 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 586 "$$awk_code" $(srcdir)/$(VC11_LIBTMPL) > $(VC11_LIBVCXPROJ) || { exit 1; }; \ 587 \ 588 echo "generating '$(VC11_SRCVCXPROJ)'"; \ 589 awk -v proj_type=vcxproj \ 590 -v src_srcs="$$sorted_src_srcs" \ 591 -v src_hdrs="$$sorted_src_hdrs" \ 592 -v src_rc="$$win32_src_rc" \ 593 -v src_x_srcs="$$sorted_src_x_srcs" \ 594 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 595 "$$awk_code" $(srcdir)/$(VC11_SRCTMPL) > $(VC11_SRCVCXPROJ) || { exit 1; }; \ 596 \ 597 echo "generating '$(VC12_LIBVCXPROJ)'"; \ 598 awk -v proj_type=vcxproj \ 599 -v lib_srcs="$$sorted_lib_srcs" \ 600 -v lib_hdrs="$$sorted_lib_hdrs" \ 601 -v lib_rc="$$win32_lib_rc" \ 602 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 603 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 604 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 605 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 606 "$$awk_code" $(srcdir)/$(VC12_LIBTMPL) > $(VC12_LIBVCXPROJ) || { exit 1; }; \ 607 \ 608 echo "generating '$(VC12_SRCVCXPROJ)'"; \ 609 awk -v proj_type=vcxproj \ 610 -v src_srcs="$$sorted_src_srcs" \ 611 -v src_hdrs="$$sorted_src_hdrs" \ 612 -v src_rc="$$win32_src_rc" \ 613 -v src_x_srcs="$$sorted_src_x_srcs" \ 614 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 615 "$$awk_code" $(srcdir)/$(VC12_SRCTMPL) > $(VC12_SRCVCXPROJ) || { exit 1; }; \ 616 \ 617 echo "generating '$(VC14_LIBVCXPROJ)'"; \ 618 awk -v proj_type=vcxproj \ 619 -v lib_srcs="$$sorted_lib_srcs" \ 620 -v lib_hdrs="$$sorted_lib_hdrs" \ 621 -v lib_rc="$$win32_lib_rc" \ 622 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 623 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 624 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 625 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 626 "$$awk_code" $(srcdir)/$(VC14_LIBTMPL) > $(VC14_LIBVCXPROJ) || { exit 1; }; \ 627 \ 628 echo "generating '$(VC14_SRCVCXPROJ)'"; \ 629 awk -v proj_type=vcxproj \ 630 -v src_srcs="$$sorted_src_srcs" \ 631 -v src_hdrs="$$sorted_src_hdrs" \ 632 -v src_rc="$$win32_src_rc" \ 633 -v src_x_srcs="$$sorted_src_x_srcs" \ 634 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 635 "$$awk_code" $(srcdir)/$(VC14_SRCTMPL) > $(VC14_SRCVCXPROJ) || { exit 1; }; \ 636 \ 637 echo "generating '$(VC15_LIBVCXPROJ)'"; \ 638 awk -v proj_type=vcxproj \ 639 -v lib_srcs="$$sorted_lib_srcs" \ 640 -v lib_hdrs="$$sorted_lib_hdrs" \ 641 -v lib_rc="$$win32_lib_rc" \ 642 -v lib_vauth_srcs="$$sorted_lib_vauth_srcs" \ 643 -v lib_vauth_hdrs="$$sorted_lib_vauth_hdrs" \ 644 -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \ 645 -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \ 646 "$$awk_code" $(srcdir)/$(VC15_LIBTMPL) > $(VC15_LIBVCXPROJ) || { exit 1; }; \ 647 \ 648 echo "generating '$(VC15_SRCVCXPROJ)'"; \ 649 awk -v proj_type=vcxproj \ 650 -v src_srcs="$$sorted_src_srcs" \ 651 -v src_hdrs="$$sorted_src_hdrs" \ 652 -v src_rc="$$win32_src_rc" \ 653 -v src_x_srcs="$$sorted_src_x_srcs" \ 654 -v src_x_hdrs="$$sorted_src_x_hdrs" \ 655 "$$awk_code" $(srcdir)/$(VC15_SRCTMPL) > $(VC15_SRCVCXPROJ) || { exit 1; };) 656 657tidy: 658 (cd src && $(MAKE) tidy) 659 (cd lib && $(MAKE) tidy) 660