1# $OpenBSD: Makefile,v 1.65 2023/07/03 17:55:51 anton Exp $ 2 3REGRESS_TARGETS=cmp-vers1-1 \ 4 cmp-vers1-2 \ 5 cmp-vers1-3 \ 6 cmp-vers2-1 \ 7 cmp-vers2-2 \ 8 cmp-vers2-3 \ 9 cmp-vers2-4 \ 10 cmp-vers2-5 \ 11 cmp-vers2-6 \ 12 cmp-vers2-7 \ 13 cmp-vers2-8 \ 14 cmp-vers2-9 \ 15 cmp-vers2-10 \ 16 cmp-vers2-11 \ 17 cmp-vers2-12 \ 18 cmp-vers3 \ 19 cmp-vers4-1 \ 20 cmp-vers4-2 \ 21 cmp-vers4-3 \ 22 cmp-vers4-4 \ 23 cmp-vers4-5 \ 24 cmp-vers4-6 \ 25 cmp-vers4-7 \ 26 cmp-vers4-8 \ 27 cmp-vers4-9 \ 28 cmp-vers5-1 \ 29 cmp-vers5-2 \ 30 cmp-vers5-3 \ 31 cmp-vers5-4 \ 32 cmp-vers5-5 \ 33 cmp-vers5-6 \ 34 cmp-vers5-7 \ 35 cmp-vers6-1 \ 36 cmp-vers6-2 \ 37 cmp-vers7-1 \ 38 cmp-vers7-2 \ 39 cmp-vers7-3 \ 40 cmp-vers7-4 \ 41 cmp-vers8-1 \ 42 corrupt1 \ 43 corrupt2 \ 44 corrupt3 \ 45 print-provides \ 46 print-req \ 47 print-req-priv \ 48 logfile \ 49 sysroot-cflags \ 50 sysroot-libs \ 51 static-cflags1 \ 52 static-cflags2 \ 53 static-libs1 \ 54 static-libs2 \ 55 static-libs3 \ 56 static-libs4 \ 57 static-order \ 58 missing-req-1 \ 59 missing-req-2 \ 60 missing-req-3 \ 61 missing-req-4 \ 62 whitespace-cflags \ 63 whitespace-libs \ 64 whitespace-linebreak \ 65 whitespace-requires-1 \ 66 whitespace-requires-2 \ 67 whitespace-name \ 68 whitespace-property-1 \ 69 whitespace-property-2 \ 70 whitespace-property-3 \ 71 quoting \ 72 broken-require-1 \ 73 broken-require-2 \ 74 min-version-1 \ 75 min-version-2 \ 76 exact-version-1 \ 77 exact-version-2 \ 78 max-version-1 \ 79 max-version-2 \ 80 find-config-1 \ 81 find-config-2 \ 82 find-config-3 \ 83 find-config-4 \ 84 find-config-5 \ 85 validate-1 \ 86 validate-2 \ 87 validate-3 \ 88 variable-get-1 \ 89 variable-set \ 90 variables-1 \ 91 variables-2 \ 92 variables-3 \ 93 variables-4 \ 94 variables-5 \ 95 variables-6 \ 96 variables-7 \ 97 filter-system-dirs-1 \ 98 filter-system-dirs-2 \ 99 filter-system-dirs-3 \ 100 filter-system-dirs-4 \ 101 filter-system-dirs-5 \ 102 filter-system-dirs-6 \ 103 cflags-system-path-1 \ 104 cflags-system-path-2 \ 105 lib-flags-1 \ 106 lib-flags-2 \ 107 lib-flags-3 \ 108 lib-flags-4 \ 109 private-cflags-1 \ 110 private-libs-1 \ 111 private-cflags-libs-1 \ 112 private-static-libs-1 113 114PKG_CONFIG?= /usr/bin/pkg-config 115PCONFIG = PKG_CONFIG_PATH=${.CURDIR}/pcdir/ ${PKG_CONFIG} 116VPCONFIG = ${PCONFIG} --errors-to-stdout --print-errors > ${GOT} 117WANT= ${.OBJDIR}/$@.want 118GOT= ${.OBJDIR}/$@.got 119 120# Tests for corrupt pkg-config files. 121corrupt1: 122 # Test for missing variables/fields 123 @echo "Package '$@' has no Version: field" > ${WANT} 124 @! ${VPCONFIG} --exists $@ 125 @diff -u ${WANT} ${GOT} 126 127corrupt2: 128 # Test for missing variables/fields 129 @echo "Package '$@' has no Name: field" > ${WANT} 130 @! ${VPCONFIG} --exists $@ 131 @diff -u ${WANT} ${GOT} 132 133corrupt3: 134 # Test for empty file 135 @echo "Package file '${.CURDIR}/pcdir//$@.pc' appears to be empty" > ${WANT} 136 @echo "Package '$@' has no Name: field" >> ${WANT} 137 @! ${VPCONFIG} --libs $@ 138 @diff -u ${WANT} ${GOT} 139 140# Tests for various printing features 141print-provides: 142 # Test --print-provides 143 @echo "print-provides = 0.0.0" > ${WANT} 144 @${PCONFIG} --print-provides $@ > ${GOT} 145 @diff -u ${WANT} ${GOT} 146 147print-req: 148 # Test --print-requires 149 @echo "print-req2>=0.0.1" > ${WANT} 150 @${PCONFIG} --print-requires $@ > ${GOT} 151 @diff -u ${WANT} ${GOT} 152 153print-req-priv: 154 # Test --print-requires-private 155 @echo "print-req-priv2>=0.0.0" > ${WANT} 156 @${PCONFIG} --print-requires-private $@ > ${GOT} 157 @diff -u ${WANT} ${GOT} 158 159# Tests for version comparison 160cmp-vers1-1: 161 # Test regular versions (a <= b) 162 @! ${PCONFIG} --exists "vers1 <= 0.0.2" 163 164cmp-vers1-2: 165 # Test regular versions (a <= b) 166 @${PCONFIG} --exists "vers1 <= 0.1.0" 167 168cmp-vers1-3: 169 # Test regular versions (a < b) 170 @${PCONFIG} --exists "vers1 < 0.2" 171 172cmp-vers2-1: 173 # Test regular versions (a >= b) 174 @${PCONFIG} --exists "vers2 >= 0.0.1" 175 176cmp-vers2-2: 177 # Test regular versions (a >= b) 178 @${PCONFIG} --exists "vers2 >= 0.0.0" 179 180cmp-vers2-3: 181 # Test regular versions (a >= b) 182 @${PCONFIG} --exists "vers2 >= 0.1.0" 183 184cmp-vers2-4: 185 # Test regular versions (a >= b) 186 @! ${PCONFIG} --exists "vers2 > 0.2.0.0" 187 188cmp-vers2-5: 189 # Test regular versions (a != b) 190 @${PCONFIG} --exists "vers2 != 0.1.0" 191 192cmp-vers2-6: 193 # Test regular versions (a != b) 194 @! ${PCONFIG} --exists "vers2 != 0.2.0" 195 196cmp-vers2-7: 197 # Test regular versions (a >= b a != c) 198 @${PCONFIG} --exists "vers2 >= 0.1.0 vers2 != 0.3.0" 199 200cmp-vers2-8: 201 # Test regular versions (a >= b a != c) 202 @${PCONFIG} --exists "vers2 >= 0.2.0 vers2 != 0.3.0" 203 204cmp-vers2-9: 205 # Test regular versions (a >= b a != c) 206 @! ${PCONFIG} --exists "vers2 >= 0.1.0 vers2 != 0.2.0" 207 208cmp-vers2-10: 209 # Test regular versions (a >= b a < c) 210 @! ${PCONFIG} --exists "vers2 >= 0.2.0 vers2 < 0.1.0" 211 212cmp-vers2-11: 213 # Test regular versions (a >= b a < c) 214 @! ${PCONFIG} --exists "vers2 >= 0.2.0 vers2 < 0.2.0" 215 216cmp-vers2-12: 217 # Test regular versions (a >= b a < c) 218 @${PCONFIG} --exists "vers2 >= 0.2.0 vers2 < 0.3.0" 219 220cmp-vers3: 221 # Test regular versions (a = b) 222 @${PCONFIG} --exists "vers2 = 0.2.0" 223 224cmp-vers4-1: 225 # Test suffixed versions (alpha >) 226 @touch ${WANT} 227 @${VPCONFIG} "alpha > 0.1.0" 228 @diff -u ${WANT} ${GOT} 229 230cmp-vers4-2: 231 # Test suffixed versions (alpha >) 232 @touch ${WANT} 233 @${VPCONFIG} "alpha > 0.1.0alpha1" 234 @diff -u ${WANT} ${GOT} 235 236cmp-vers4-3: 237 # Test suffixed versions (alpha >=) 238 @touch ${WANT} 239 @${VPCONFIG} "alpha >= 0.1.0" 240 @diff -u ${WANT} ${GOT} 241 242cmp-vers4-4: 243 # Test suffixed versions (alpha >=) 244 @touch ${WANT} 245 @${VPCONFIG} "alpha >= 0.1.0alpha2" 246 @diff -u ${WANT} ${GOT} 247 248cmp-vers4-5: 249 # Test suffixed versions (alpha <) 250 @touch ${WANT} 251 @${VPCONFIG} "alpha < 0.1.1" 252 @diff -u ${WANT} ${GOT} 253 254cmp-vers4-6: 255 # Test suffixed versions (alpha <) 256 @touch ${WANT} 257 @${VPCONFIG} "alpha < 0.1.0alpha3" 258 @diff -u ${WANT} ${GOT} 259 260cmp-vers4-7: 261 # Test suffixed versions (alpha <=) 262 @touch ${WANT} 263 @${VPCONFIG} "alpha < 0.1.1" 264 @diff -u ${WANT} ${GOT} 265 266cmp-vers4-8: 267 # Test suffixed versions (alpha <=) 268 @touch ${WANT} 269 @${VPCONFIG} "alpha <= 0.1.0alpha2" 270 @diff -u ${WANT} ${GOT} 271 272cmp-vers4-9: 273 # Test suffixed versions (alpha =) 274 @touch ${WANT} 275 @${VPCONFIG} "alpha = 0.1.0alpha2" 276 @diff -u ${WANT} ${GOT} 277 278cmp-vers5-1: 279 # Test suffixed versions (beta > alpha) 280 @touch ${WANT} 281 @${VPCONFIG} "beta > 0.1.0alpha1" 282 @diff -u ${WANT} ${GOT} 283 284cmp-vers5-2: 285 # Test suffixed versions (beta >= alpha) 286 @touch ${WANT} 287 @${VPCONFIG} "beta >= 0.1.0beta1" 288 @diff -u ${WANT} ${GOT} 289 290cmp-vers5-3: 291 # Test suffixed versions (alpha < rc) 292 @touch ${WANT} 293 @${VPCONFIG} "alpha < 0.1.0rc2" 294 @diff -u ${WANT} ${GOT} 295 296cmp-vers5-4: 297 # Test suffixed versions (beta < rc) 298 @touch ${WANT} 299 @${VPCONFIG} "beta < 0.1.0rc2" 300 @diff -u ${WANT} ${GOT} 301 302cmp-vers5-5: 303 # Test suffixed versions (alpha < beta) 304 @touch ${WANT} 305 @${VPCONFIG} "alpha < 0.1.0beta2" 306 @diff -u ${WANT} ${GOT} 307 308cmp-vers5-6: 309 # Test suffixed versions (rc > alpha) 310 @touch ${WANT} 311 @${VPCONFIG} "rc > 0.1.0alpha2" 312 @diff -u ${WANT} ${GOT} 313 314cmp-vers5-7: 315 # Test suffixed versions (rc > beta) 316 @touch ${WANT} 317 @${VPCONFIG} "rc > 0.1.0beta2" 318 @diff -u ${WANT} ${GOT} 319 320cmp-vers5-8: 321 # Test suffixed versions (' ' > alpha) 322 @touch ${WANT} 323 @${VPCONFIG} "vers1 > 0.1.0alpha2" 324 @diff -u ${WANT} ${GOT} 325 326cmp-vers5-9: 327 # Test suffixed versions (' ' > beta) 328 @touch ${WANT} 329 @${VPCONFIG} "beta <= 0.1.0beta2" 330 @diff -u ${WANT} ${GOT} 331 332cmp-vers5-10: 333 # Test suffixed versions (' ' > rc) 334 @touch ${WANT} 335 @${VPCONFIG} "beta <= 0.1.0rc2" 336 @diff -u ${WANT} ${GOT} 337 338cmp-vers6-1: 339 # Test suffixed versions in Requires 340 @echo "-lalpha2" > ${WANT} 341 @${VPCONFIG} --libs requires-test2 342 @diff -u ${WANT} ${GOT} 343 344cmp-vers6-2: 345 # Test suffixed versions in Requires.private 346 @echo "Requested 'alpha >= 0.1.0alpha3' but version of alpha suffix test is 0.1.0alpha2" > ${WANT} 347 @! ${VPCONFIG} --libs --static requires-test2 348 @diff -u ${WANT} ${GOT} 349 350cmp-vers7-1: 351 # Test suffixed version (vers3 > 1.0.1g) 352 @touch ${WANT} 353 @${VPCONFIG} "vers3 > 1.0.1g" 354 @diff -u ${WANT} ${GOT} 355 356cmp-vers7-2: 357 # Test suffixed version (vers3 < 1.0.1i) 358 @touch ${WANT} 359 @${VPCONFIG} "vers3 < 1.0.1i" 360 @diff -u ${WANT} ${GOT} 361 362cmp-vers7-3: 363 # Test suffixed version (vers3 < 1.0.1i) 364 @touch ${WANT} 365 @${VPCONFIG} "vers3 < 1.0.1i" 366 @diff -u ${WANT} ${GOT} 367 368cmp-vers7-4: 369 # Test suffixed version (vers3 > 1.0.1) 370 @touch ${WANT} 371 @${VPCONFIG} "vers3 > 1.0.1" 372 @diff -u ${WANT} ${GOT} 373 374cmp-vers8-1: 375 # Test Version: x.y.z-stable w/compare() 376 @touch ${WANT} 377 @${VPCONFIG} --atleast-version=2.0.1 vers4 378 @diff -u ${WANT} ${GOT} 379 380# Tests for various environment variables 381builddir: 382 # Test PKG_CONFIG_TOP_BUILD_DIR 383 384logfile: 385 # Test PKG_CONFIG_LOG 386 @echo "[${PKG_CONFIG}] [--exists] [sysroot >= 0.0.0]" > ${WANT} 387 @rm -f ${GOT} 388 @PKG_CONFIG_LOG=${GOT} ${PCONFIG} --exists "sysroot >= 0.0.0" 389 @diff -u ${WANT} ${GOT} 390 391sysroot-cflags: 392 # Test PKG_CONFIG_SYSROOT_DIR (cflags) 393 @echo "-I/altroot/tmp/include -I/altroot/tmp/include/foo" > ${WANT} 394 @PKG_CONFIG_SYSROOT_DIR=/altroot ${PCONFIG} --cflags sysroot > ${GOT} 395 @diff -u ${WANT} ${GOT} 396 397sysroot-libs: 398 # Test PKG_CONFIG_SYSROOT_DIR (libs) 399 @echo "-L/altroot/tmp/lib -L/altroot/tmp/lib/foo -lc" > ${WANT} 400 @PKG_CONFIG_SYSROOT_DIR=/altroot ${PCONFIG} --libs sysroot > ${GOT} 401 @diff -u ${WANT} ${GOT} 402 403# Tests for static linking 404static-cflags1: 405 # Test grabbing Cflags (without Requires.private) 406 @echo "-I/usr/local/include/foo" > ${WANT} 407 @${VPCONFIG} --cflags --static static 408 @diff -u ${WANT} ${GOT} 409 410static-cflags2: 411 # Test grabbing Cflags (with Requires.private) 412 @echo "-I/usr/local/include -I/usr/local/include/foo" > ${WANT} 413 @${VPCONFIG} --cflags --static static2 414 @diff -u ${WANT} ${GOT} 415 416static-libs1: 417 # Test grabbing Libs.private from this package 418 @echo "-L/usr/local/lib -lc -lm -ll" > ${WANT} 419 @${VPCONFIG} --libs --static static 420 @diff -u ${WANT} ${GOT} 421 422static-libs2: 423 # Test grabbing Libs.private from Requires in order 424 @echo "-L/usr/local/lib -lutil -lz -lc -lm -ll" > ${WANT} 425 @${VPCONFIG} --libs --static static2 426 @diff -u ${WANT} ${GOT} 427 428static-libs3: 429 # Test grabbing Libs.private from Requires.private in order 430 @echo "-L/usr/local/lib -L/tmp/lib -L/tmp/lib/foo -lutil -lz -lc -lm -ll -lbaz\ quux" > ${WANT} 431 @${VPCONFIG} --libs --static static3 432 @diff -u ${WANT} ${GOT} 433 434static-libs4: 435 # Test Requires.private 436 @echo "-L/requires-test/lib -L/private-dep/lib -L/public-dep/lib -lrequires-test -lprivate-dep -lpublic-dep" > ${WANT} 437 @${VPCONFIG} --libs --static requires-test 438 @diff -u ${WANT} ${GOT} 439 440static-order: 441 # Test Requires.private order 442 @echo "-L/usr/X11R6/lib -lstatic-order1 -lstatic-order2 -lstatic-order3" > ${WANT} 443 @${VPCONFIG} --static --libs static-order1 444 @diff -u ${WANT} ${GOT} 445 446missing-req-1: 447 # Test for missing packages in Requires (libs) 448 @echo "Package nonexisting was not found in the pkg-config search path" > ${WANT} 449 @! ${VPCONFIG} --libs missing-req 450 @diff -u ${WANT} ${GOT} 451 452missing-req-2: 453 # Test for missing packages in Requires (cflags) 454 @echo "Package nonexisting2 was not found in the pkg-config search path" > ${WANT} 455 @echo "Package nonexisting was not found in the pkg-config search path" >> ${WANT} 456 @! ${VPCONFIG} --cflags missing-req 457 @diff -u ${WANT} ${GOT} 458 459missing-req-3: 460 # Test for missing packages in Requires (version) 461 @echo "0.0.0" > ${WANT} 462 @${VPCONFIG} --modversion missing-req 463 @diff -u ${WANT} ${GOT} 464 465missing-req-4: 466 # Test for missing Requires.private with --exists 467 @echo "Package nonexisting was not found in the pkg-config search path" > ${WANT} 468 @! ${VPCONFIG} --exists missing-req2 469 @diff -u ${WANT} ${GOT} 470 471whitespace-cflags: 472 # Test whitespace on various positions in Cflags 473 @echo "-I/tmp/include -I/tmp/include/include\ dir" > ${WANT} 474 @${VPCONFIG} --cflags whitespace 475 @diff -u ${WANT} ${GOT} 476 477whitespace-libs: 478 # Test whitespace on various positions in Libs 479 @echo "-L/tmp/lib -L/tmp/lib/foo -lbaz\ quux" > ${WANT} 480 @${VPCONFIG} --libs whitespace 481 @diff -u ${WANT} ${GOT} 482 483whitespace-linebreak: 484 # Test linebreak in Description field 485 @echo "-lc" > ${WANT} 486 @${VPCONFIG} --libs linebreak 487 @diff -u ${WANT} ${GOT} 488 489whitespace-requires-1: 490 # Test whitespace in version comparison 491 @${VPCONFIG} --exists $@ 492 493whitespace-requires-2: 494 # Test whitespace in version comparison 495 @${VPCONFIG} --exists $@ 496 497whitespace-name: 498 # Test whitespace in Name 499 @echo "Requested 'whitespace > 0.2.0' but version of Whitespace test is 0.0.0" > ${WANT} 500 @! ${VPCONFIG} "whitespace > 0.2.0" 501 @diff -u ${WANT} ${GOT} 502 503whitespace-property-1: 504 # Test lack of whitespace after property name 505 @echo "-I/usr/local/include" > ${WANT} 506 @${VPCONFIG} --cflags whitespace-prop-1 507 @diff -u ${WANT} ${GOT} 508 509whitespace-property-2: 510 # Test whitespace after property value 511 @echo "0.0.0" > ${WANT} 512 @${VPCONFIG} --modversion whitespace-prop-2 513 @diff -u ${WANT} ${GOT} 514 515whitespace-property-3: 516 # Test whitespace before property value 517 @echo "0.0.0" > ${WANT} 518 @${VPCONFIG} --modversion whitespace-prop-3 519 @diff -u ${WANT} ${GOT} 520 521quoting: 522 # Test for stripping out quotes from variables 523 @echo "-I/usr/X11R6/include/freetype2" > ${WANT} 524 @${VPCONFIG} --cflags quotes 525 @diff -u ${WANT} ${GOT} 526 527broken-require-1: 528 # Test expanded variables with special parsing requirements 529 @${PCONFIG} requires-test3 530 531broken-require-2: 532 # Test expanded variables with special parsing requirements 533 @${PCONFIG} requires-test4 534 535min-version-1: 536 # Test --atleast-version (matches) 537 @${PCONFIG} --atleast-version=0.0.9 vers1 538 539min-version-2: 540 # Test --atleast-version (doesn't match) 541 @! ${PCONFIG} --atleast-version=0.1.1 vers1 542 543exact-version-1: 544 # Test --exact-version (matches) 545 @${PCONFIG} --exact-version=0.1.0 vers1 546 547exact-version-2: 548 # Test --exact-version (doesn't match) 549 @! ${PCONFIG} --exact-version=0.1.1 vers1 550 551max-version-1: 552 # Test --max-version (matches) 553 @${PCONFIG} --max-version=0.1.0 vers1 554 555max-version-2: 556 # Test --max-version (doesn't match) 557 @! ${PCONFIG} --max-version=0.0.9 vers1 558 559find-config-1: 560 # Test a regular module name being resolved 561 @echo "1.0.0" > ${WANT} 562 @${VPCONFIG} --modversion public-dep 563 @diff -u ${WANT} ${GOT} 564 565# Need to use ${PKG_CONFIG} instead of ${VPCONFIG} as the latter sets PKG_CONFIG_PATH, 566# which is exactly what we don't want for this test. 567find-config-2: 568 # Test a full path to a .pc file 569 @echo "1.0.0" > ${WANT} 570 @${PKG_CONFIG} --errors-to-stdout --print-errors --modversion \ 571 ${.CURDIR}/pcdir/public-dep.pc > ${GOT} 572 @diff -u ${WANT} ${GOT} 573 574find-config-3: 575 # Simple existential test 576 @${VPCONFIG} --exists vers1 577 578find-config-4: 579 # Multiple existential tests combined (with comma) 580 @${VPCONFIG} --exists vers1,vers2 581 582find-config-5: 583 # Multiple existential tests combined (with space) 584 @${VPCONFIG} --exists vers1 vers2 585 586validate-1: 587 # Ensure it doesn't process dependencies 588 @${VPCONFIG} --validate missing-req 589 590validate-2: 591 # Test for empty files 592 @echo "Package file '${.CURDIR}/pcdir//corrupt3.pc' appears to be empty" > ${WANT} 593 @echo "Package 'corrupt3' has no Name: field" >> ${WANT} 594 @! ${VPCONFIG} --validate corrupt3 595 @diff -u ${WANT} ${GOT} 596 597validate-3: 598 # Test for missing fields 599 @echo "Package 'corrupt2' has no Name: field" > ${WANT} 600 @! ${VPCONFIG} --validate corrupt2 601 @diff -u ${WANT} ${GOT} 602 603variable-get-1: 604 # Test --variable 605 @echo "/tmp" > ${WANT} 606 @${VPCONFIG} --variable prefix sysroot 607 @diff -u ${WANT} ${GOT} 608 609variable-set: 610 # Test --define-variable 611 @echo "-I/usr/local2/include -I/usr/local2/include/foo" > ${WANT} 612 @${VPCONFIG} --define-variable=prefix=/usr/local2 \ 613 --cflags sysroot 614 @diff -u ${WANT} ${GOT} 615 616variables-1: 617 # Test --variable without any options 618 @echo "/usr/local/lib/pkgconfig-plugins.0" > ${WANT} 619 @${VPCONFIG} --variable=plugindir variables 620 @diff -u ${WANT} ${GOT} 621 622variables-2: 623 # Test --variable + --define-variable 624 @echo "/chroot/lib/pkgconfig-plugins.0" > ${WANT} 625 @${VPCONFIG} --define-variable=libdir='/chroot/lib' --variable=plugindir variables 626 @diff -u ${WANT} ${GOT} 627 628variables-3: 629 # Test --variable + --define-variable 630 @echo '$${foodir}/pkgconfig-plugins.0' > ${WANT} 631 @${VPCONFIG} --define-variable=libdir='$${foodir}' --variable=plugindir variables 632 @diff -u ${WANT} ${GOT} 633 634variables-4: 635 # Test --variable + --define-variable 636 @echo '$${libdir}/pkgconfig-plugins.0' > ${WANT} 637 @${VPCONFIG} --define-variable=libdir='$${libdir}' --variable=plugindir variables 638 @diff -u ${WANT} ${GOT} 639 640variables-5: 641 # Test --variable 642 @echo '-lfoo-1' > ${WANT} 643 @${VPCONFIG} --libs variables 644 @diff -u ${WANT} ${GOT} 645 646variables-6: 647 # Test variable overriding from environment 648 @echo '-lfoo-2' > ${WANT} 649 @PKG_CONFIG_VARIABLES_FOO_API_VERSION=2 ${VPCONFIG} --libs variables 650 @diff -u ${WANT} ${GOT} 651 652variables-7: 653 # Ensure variable overriding only uses uppercase keys 654 @echo '-lfoo-1' > ${WANT} 655 @PKG_CONFIG_variables_foo_api_version=2 ${VPCONFIG} --libs variables 656 @diff -u ${WANT} ${GOT} 657 658filter-system-dirs-1: 659 # Test removing -I/usr/include as a system directory 660 @echo '-DFILTER' > ${WANT} 661 @${VPCONFIG} --cflags filter 662 @diff -u ${WANT} ${GOT} 663 664filter-system-dirs-2: 665 # Test removing -L/usr/lib as a system directory 666 @echo '-lfilter' > ${WANT} 667 @${VPCONFIG} --libs filter 668 @diff -u ${WANT} ${GOT} 669 670filter-system-dirs-3: 671 # Test removing -L/usr/lib as a system directory (static) 672 @echo '-lfilter -lprivate-filter' > ${WANT} 673 @${VPCONFIG} --static --libs filter 674 @diff -u ${WANT} ${GOT} 675 676filter-system-dirs-4: 677 # Test not removing -I/usr/include/filter as a system directory 678 @echo '-I/usr/include/filter -DFILTER' > ${WANT} 679 @${VPCONFIG} --cflags filter2 680 @diff -u ${WANT} ${GOT} 681 682filter-system-dirs-5: 683 # Test not removing -L/usr/lib/filter as a system directory 684 @echo '-L/usr/lib/filter -lfilter' > ${WANT} 685 @${VPCONFIG} --libs filter2 686 @diff -u ${WANT} ${GOT} 687 688filter-system-dirs-6: 689 # Test not removing -L/usr/lib/filter as a system directory (static) 690 @echo '-L/usr/lib/filter -lfilter -lprivate-filter' > ${WANT} 691 @${VPCONFIG} --static --libs filter2 692 @diff -u ${WANT} ${GOT} 693 694cflags-system-path-1: 695 # Test that the default /usr/include path is stripped 696 @echo "" > ${WANT} 697 @${VPCONFIG} --cflags cflags-1 698 @diff -u ${WANT} ${GOT} 699 700cflags-system-path-2: 701 # Test that the paths in PKG_CONFIG_SYSTEM_INCLUDE_PATH are stripped 702 @echo "-I/usr/local/include" > ${WANT} 703 @PKG_CONFIG_SYSTEM_INCLUDE_PATH=/usr/X11R6/include:/usr/private/include ${VPCONFIG} --cflags cflags-2 704 @diff -u ${WANT} ${GOT} 705 706lib-flags-1: 707 # Test --libs-only-other 708 @echo "-pthread" > ${WANT} 709 @${VPCONFIG} --libs-only-other lib-flags 710 @diff -u ${WANT} ${GOT} 711 712lib-flags-2: 713 # Test --libs 714 @echo "-L/usr/local/lib -pthread -lalpha2" > ${WANT} 715 @${VPCONFIG} --libs lib-flags 716 @diff -u ${WANT} ${GOT} 717 718lib-flags-3: 719 # Test --libs-only-L 720 @echo "-L/usr/local/lib" > ${WANT} 721 @${VPCONFIG} --libs-only-L lib-flags 722 @diff -u ${WANT} ${GOT} 723 724lib-flags-4: 725 # Test --libs-only-l 726 @echo "-lalpha2" > ${WANT} 727 @${VPCONFIG} --libs-only-l lib-flags 728 @diff -u ${WANT} ${GOT} 729 730private-cflags-1: 731 # Test --cflags printing Requires 732 @echo "-I/requires-test/include -I/private-dep/include -I/public-dep/include" > ${WANT} 733 @${VPCONFIG} --cflags requires-test 734 @diff -u ${WANT} ${GOT} 735 736private-libs-1: 737 # Test --libs printing Requires 738 @echo "-L/requires-test/lib -L/public-dep/lib -lrequires-test -lpublic-dep" > ${WANT} 739 @${VPCONFIG} --libs requires-test 740 @diff -u ${WANT} ${GOT} 741 742REGRESS_EXPECTED_FAILURES+=private-cflags-libs-1 743private-cflags-libs-1: 744 # Test --cflags --libs printing Requires and not also Requires.private libs 745 @echo "-I/requires-test/include -I/private-dep/include -I/public-dep/include -L/requires-test/lib -L/public-dep/lib -lrequires-test -lpublic-dep" > ${WANT} 746 @${VPCONFIG} --cflags --libs requires-test 747 @diff -u ${WANT} ${GOT} 748 749private-static-libs-1: 750 # Test --static --libs printing Requires.private 751 @echo "-L/requires-test/lib -L/private-dep/lib -L/public-dep/lib -lrequires-test -lprivate-dep -lpublic-dep" > ${WANT} 752 @${VPCONFIG} --static --libs requires-test 753 @diff -u ${WANT} ${GOT} 754 755clean: 756 rm -f *.want *.got 757 758.PHONY: ${REGRESS_TARGETS} 759 760.include <bsd.regress.mk> 761