1# Build wrapper for the HTTP daemon 2# $MirOS: src/usr.sbin/httpd/Makefile.bsd-wrapper,v 1.12 2008/03/19 23:07:16 tg Exp $ 3# $OpenBSD: Makefile.bsd-wrapper,v 1.64 2008/01/08 10:08:31 henning Exp $ 4 5.include <bsd.own.mk> 6.include <bsd.sys.mk> 7 8# until this works with bmake and without a Configure script… 9COPTS+= -std=gnu89 10CFLAGS+= ${COPTS} 11 12# MirOS Layout 13#<Layout MirOS> 14# prefix: /var/www 15# exec_prefix: /usr 16# bindir: $exec_prefix/bin 17# sbindir: $exec_prefix/sbin 18# libexecdir: $exec_prefix/libexec/httpd/modules 19# mandir: $exec_prefix/share/man 20# sysconfdir: $prefix/conf 21# datadir: $prefix 22# iconsdir: $prefix/icons 23# htdocsdir: $prefix/htdocs 24# manualdir: $htdocsdir/manual 25# cgidir: $prefix/cgi-bin 26# includedir: $exec_prefix/libexec/httpd/include 27# localstatedir: $prefix 28# runtimedir: $prefix/logs 29# logfiledir: $prefix/logs 30# proxycachedir: $prefix/proxy 31#</Layout> 32 33HTTPD_PREFIX= /var/www 34HTTPD_EXEC_PREFIX= /usr 35HTTPD_BINDIR= ${HTTPD_EXEC_PREFIX}/bin 36HTTPD_SBINDIR= ${HTTPD_EXEC_PREFIX}/sbin 37HTTPD_LIBEXECDIR= ${HTTPD_EXEC_PREFIX}/libexec/httpd/modules 38HTTPD_SYSCONFDIR= ${HTTPD_PREFIX}/conf 39HTTPD_ICONSDIR= ${HTTPD_PREFIX}/icons 40HTTPD_HTDOCSDIR= ${HTTPD_PREFIX}/htdocs 41HTTPD_INCLUDEDIR= ${HTTPD_EXEC_PREFIX}/libexec/httpd/include 42HTTPD_RUNDIR= ${HTTPD_PREFIX}/logs 43HTTPD_LOGDIR= ${HTTPD_PREFIX}/logs 44 45CONFIG_ARGS= --with-layout=MirOS --enable-module=ssl --enable-suexec \ 46 --enable-module=keynote --enable-rule=INET6 \ 47 --suexec-caller=www \ 48 --suexec-docroot=${HTTPD_HTDOCSDIR:Q} --suexec-userdir=pub \ 49 --suexec-logfile=/var/log/suexec_log \ 50 --suexec-uidmin=1000 --suexec-gidmin=1000 \ 51 --suexec-safepath=/usr/bin:/bin:/usr/local/bin:/usr/mpkg/bin 52 53# This is stupid - to build a DSO module for httpd you not only need to 54# --enable-shared, you need to --enable-module or --enable-shared doesn't 55# do anything. 56 57DSO_MODULE_ARGS= \ 58 --enable-module=so \ 59 --enable-module=auth_anon \ 60 --enable-shared=auth_anon \ 61 --enable-module=expires \ 62 --enable-shared=expires \ 63 --enable-module=headers \ 64 --enable-shared=headers \ 65 --enable-module=auth_db \ 66 --enable-shared=auth_db \ 67 --enable-module=auth_dbm \ 68 --enable-shared=auth_dbm \ 69 --enable-module=auth_digest \ 70 --enable-shared=auth_digest \ 71 --enable-module=cern_meta \ 72 --enable-shared=cern_meta \ 73 --enable-module=define \ 74 --enable-shared=define \ 75 --enable-module=digest \ 76 --enable-shared=digest \ 77 --enable-module=info \ 78 --enable-shared=info \ 79 --enable-module=log_agent \ 80 --enable-shared=log_agent \ 81 --enable-module=log_referer \ 82 --enable-shared=log_referer \ 83 --enable-module=mime_magic \ 84 --enable-shared=mime_magic \ 85 --enable-module=mmap_static \ 86 --enable-shared=mmap_static \ 87 --enable-module=proxy \ 88 --enable-shared=proxy \ 89 --enable-module=rewrite \ 90 --enable-shared=rewrite \ 91 --enable-module=speling \ 92 --enable-shared=speling \ 93 --enable-module=unique_id \ 94 --enable-shared=unique_id \ 95 --enable-module=usertrack \ 96 --enable-shared=usertrack \ 97 --enable-module=vhost_alias \ 98 --enable-shared=vhost_alias 99 100INSTALL_MODULES= 101 102# If you support dynamic loading, enable the so module, and build all the 103# modules that come with httpd. 104 105.if !defined(NOPIC) || ${NOPIC:L} == "no" 106CONFIG_ARGS+= ${DSO_MODULE_ARGS} 107INSTALL_MODULES= \ 108 src/modules/experimental/mod_mmap_static.so \ 109 src/modules/experimental/mod_auth_digest.so \ 110 src/modules/extra/mod_define.so \ 111 src/modules/proxy/libproxy.so \ 112 src/modules/standard/mod_vhost_alias.so \ 113 src/modules/standard/mod_log_agent.so \ 114 src/modules/standard/mod_info.so \ 115 src/modules/standard/mod_log_referer.so \ 116 src/modules/standard/mod_mime_magic.so \ 117 src/modules/standard/mod_speling.so \ 118 src/modules/standard/mod_rewrite.so \ 119 src/modules/standard/mod_auth_dbm.so \ 120 src/modules/standard/mod_auth_anon.so \ 121 src/modules/standard/mod_auth_db.so \ 122 src/modules/standard/mod_digest.so \ 123 src/modules/standard/mod_cern_meta.so \ 124 src/modules/standard/mod_usertrack.so \ 125 src/modules/standard/mod_unique_id.so \ 126 src/modules/standard/mod_expires.so \ 127 src/modules/standard/mod_headers.so 128.endif 129 130PERLPATH= /usr/bin/perl 131 132MUNGEDFILES= ${.OBJDIR}/src/ap/Makefile \ 133 ${.OBJDIR}/src/include/ap_config_auto.h.new \ 134 ${.OBJDIR}/src/main/Makefile \ 135 ${.OBJDIR}/src/modules/experimental/Makefile \ 136 ${.OBJDIR}/src/modules/extra/Makefile \ 137 ${.OBJDIR}/src/modules/proxy/Makefile \ 138 ${.OBJDIR}/src/modules/standard/Makefile \ 139 ${.OBJDIR}/src/modules/keynote/Makefile \ 140 ${.OBJDIR}/src/modules/ssl/Makefile \ 141 ${.OBJDIR}/src/modules/ssl/ssl_expr_parse.c \ 142 ${.OBJDIR}/src/modules/ssl/ssl_expr_parse.h \ 143 ${.OBJDIR}/src/modules/ssl/ssl_expr_scan.c \ 144 ${.OBJDIR}/src/modules/Makefile \ 145 ${.OBJDIR}/src/os/unix/Makefile \ 146 ${.OBJDIR}/src/regex/Makefile \ 147 ${.OBJDIR}/src/support/Makefile \ 148 ${.OBJDIR}/src/apaci \ 149 ${.OBJDIR}/src/Makefile \ 150 ${.OBJDIR}/src/Makefile.config \ 151 ${.OBJDIR}/src/modules.c \ 152 ${.OBJDIR}/src/Configuration.apaci \ 153 ${.OBJDIR}/Makefile \ 154 ${.OBJDIR}/config.status 155 156BINFILES= src/support/htdigest src/support/htpasswd 157 158SBINFILES= \ 159 src/httpd \ 160 src/support/logresolve src/support/rotatelogs src/support/suexec 161 162MAN+= httpd.8 src/support/apxs.8 src/support/dbmmanage.1 \ 163 src/support/htdigest.1 src/support/htpasswd.1 src/support/suexec.8 \ 164 src/support/logresolve.8 src/support/rotatelogs.8 165 166INCFILES= \ 167 src/include/ap.h \ 168 src/include/ap_alloc.h \ 169 src/include/ap_compat.h \ 170 src/include/ap_config.h \ 171 src/include/ap_config_auto.h \ 172 src/include/ap_ctx.h \ 173 src/include/ap_ctype.h \ 174 src/include/ap_hook.h \ 175 src/include/ap_md5.h \ 176 src/include/ap_mm.h \ 177 src/include/ap_mmn.h \ 178 src/include/ap_sha1.h \ 179 src/include/buff.h \ 180 src/include/compat.h \ 181 src/include/conf.h \ 182 src/include/explain.h \ 183 src/include/fnmatch.h \ 184 src/include/fdcache.h \ 185 src/include/http_conf_globals.h \ 186 src/include/http_config.h \ 187 src/include/http_core.h \ 188 src/include/http_log.h \ 189 src/include/http_main.h \ 190 src/include/http_protocol.h \ 191 src/include/http_request.h \ 192 src/include/http_vhost.h \ 193 src/include/httpd.h \ 194 src/include/multithread.h \ 195 src/include/rfc1413.h \ 196 src/include/scoreboard.h \ 197 src/include/util_date.h \ 198 src/include/util_md5.h \ 199 src/include/util_script.h \ 200 src/include/util_uri.h \ 201 src/os/unix/os-inline.c \ 202 src/os/unix/os.h \ 203 src/include/sa_len.h \ 204 src/include/sockaddr_storage.h \ 205 src/modules/ssl/mod_ssl.h \ 206 src/modules/ssl/ssl_expr.h \ 207 src/modules/ssl/ssl_util_ssl.h \ 208 src/modules/ssl/ssl_util_table.h 209 210MODCONFDIR= \ 211 modules \ 212 modules.sample 213 214CONFFILES= \ 215 conf/httpd.conf \ 216 conf/magic \ 217 conf/mime.types 218 219HTDOCS= \ 220 htdocs/index.htm 221 222CGIFILES= \ 223 cgi-bin/printenv \ 224 cgi-bin/test-cgi 225 226MANUALFILES= \ 227 manual/FAQ.html \ 228 manual/bind.html \ 229 manual/configuring.html \ 230 manual/content-negotiation.html \ 231 manual/custom-error.html \ 232 manual/dns-caveats.html \ 233 manual/dso.html \ 234 manual/env.html \ 235 manual/handler.html \ 236 manual/howto/auth.html \ 237 manual/howto/cgi.html \ 238 manual/howto/htaccess.html \ 239 manual/howto/ssi.html \ 240 manual/images/custom_errordocs.gif \ 241 manual/images/feather.jpg \ 242 manual/images/home.gif \ 243 manual/images/index.gif \ 244 manual/images/mod_rewrite_fig1.fig \ 245 manual/images/mod_rewrite_fig1.gif \ 246 manual/images/mod_rewrite_fig2.fig \ 247 manual/images/mod_rewrite_fig2.gif \ 248 manual/images/mod_ssl_sb.gif \ 249 manual/images/openssl_ics.gif \ 250 manual/images/pixel.gif \ 251 manual/images/sub.gif \ 252 manual/index.html \ 253 manual/invoking.html \ 254 manual/keepalive.html \ 255 manual/location.html \ 256 manual/logs.html \ 257 manual/misc/API.html \ 258 manual/misc/custom_errordocs.html \ 259 manual/misc/descriptors.html \ 260 manual/misc/fin_wait_2.html \ 261 manual/misc/howto.html \ 262 manual/misc/index.html \ 263 manual/misc/known_client_problems.html \ 264 manual/misc/perf-bsd44.html \ 265 manual/misc/perf-tuning.html \ 266 manual/misc/perf.html \ 267 manual/misc/rewriteguide.html \ 268 manual/misc/security_tips.html \ 269 manual/misc/tutorials.html \ 270 manual/mod/core.html \ 271 manual/mod/directive-dict.html \ 272 manual/mod/directives.html \ 273 manual/mod/index-bytype.html \ 274 manual/mod/index.html \ 275 manual/mod/mod_access.html \ 276 manual/mod/mod_actions.html \ 277 manual/mod/mod_alias.html \ 278 manual/mod/mod_asis.html \ 279 manual/mod/mod_auth.html \ 280 manual/mod/mod_auth_anon.html \ 281 manual/mod/mod_auth_db.html \ 282 manual/mod/mod_auth_dbm.html \ 283 manual/mod/mod_auth_digest.html \ 284 manual/mod/mod_auth_msql.html \ 285 manual/mod/mod_autoindex.html \ 286 manual/mod/mod_cern_meta.html \ 287 manual/mod/mod_cgi.html \ 288 manual/mod/mod_define.html \ 289 manual/mod/mod_digest.html \ 290 manual/mod/mod_dir.html \ 291 manual/mod/mod_env.html \ 292 manual/mod/mod_expires.html \ 293 manual/mod/mod_headers.html \ 294 manual/mod/mod_imap.html \ 295 manual/mod/mod_include.html \ 296 manual/mod/mod_info.html \ 297 manual/mod/mod_log_agent.html \ 298 manual/mod/mod_log_common.html \ 299 manual/mod/mod_log_config.html \ 300 manual/mod/mod_log_referer.html \ 301 manual/mod/mod_mime.html \ 302 manual/mod/mod_mime_magic.html \ 303 manual/mod/mod_mmap_static.html \ 304 manual/mod/mod_negotiation.html \ 305 manual/mod/mod_proxy.html \ 306 manual/mod/mod_rewrite.html \ 307 manual/mod/mod_setenvif.html \ 308 manual/mod/mod_so.html \ 309 manual/mod/mod_speling.html \ 310 manual/mod/mod_ssl/index.html \ 311 manual/mod/mod_ssl/ssl_compat.gfont000.gif \ 312 manual/mod/mod_ssl/ssl_compat.html \ 313 manual/mod/mod_ssl/ssl_cover_logo.jpg \ 314 manual/mod/mod_ssl/ssl_cover_title.jpg \ 315 manual/mod/mod_ssl/ssl_faq.gfont000.gif \ 316 manual/mod/mod_ssl/ssl_faq.html \ 317 manual/mod/mod_ssl/ssl_glossary.html \ 318 manual/mod/mod_ssl/ssl_howto.gfont000.gif \ 319 manual/mod/mod_ssl/ssl_howto.html \ 320 manual/mod/mod_ssl/ssl_intro.gfont000.gif \ 321 manual/mod/mod_ssl/ssl_intro.html \ 322 manual/mod/mod_ssl/ssl_intro_fig1.gif \ 323 manual/mod/mod_ssl/ssl_intro_fig2.gif \ 324 manual/mod/mod_ssl/ssl_intro_fig3.gif \ 325 manual/mod/mod_ssl/ssl_overview.gfont000.gif \ 326 manual/mod/mod_ssl/ssl_overview.html \ 327 manual/mod/mod_ssl/ssl_overview_fig1.gif \ 328 manual/mod/mod_ssl/ssl_reference.gfont000.gif \ 329 manual/mod/mod_ssl/ssl_reference.html \ 330 manual/mod/mod_ssl/ssl_template.head-chapter.gif \ 331 manual/mod/mod_ssl/ssl_template.head-num-1.gif \ 332 manual/mod/mod_ssl/ssl_template.head-num-2.gif \ 333 manual/mod/mod_ssl/ssl_template.head-num-3.gif \ 334 manual/mod/mod_ssl/ssl_template.head-num-4.gif \ 335 manual/mod/mod_ssl/ssl_template.head-num-5.gif \ 336 manual/mod/mod_ssl/ssl_template.head-num-6.gif \ 337 manual/mod/mod_ssl/ssl_template.head-num-7.gif \ 338 manual/mod/mod_ssl/ssl_template.imgdot-1x1-000000.gif \ 339 manual/mod/mod_ssl/ssl_template.imgdot-1x1-transp.gif \ 340 manual/mod/mod_ssl/ssl_template.navbut-next-n.gif \ 341 manual/mod/mod_ssl/ssl_template.navbut-next-s.gif \ 342 manual/mod/mod_ssl/ssl_template.navbut-prev-n.gif \ 343 manual/mod/mod_ssl/ssl_template.navbut-prev-s.gif \ 344 manual/mod/mod_ssl/ssl_template.title-abstract.gif \ 345 manual/mod/mod_ssl/ssl_template.title-compat.gif \ 346 manual/mod/mod_ssl/ssl_template.title-faq.gif \ 347 manual/mod/mod_ssl/ssl_template.title-gloss.gif \ 348 manual/mod/mod_ssl/ssl_template.title-howto.gif \ 349 manual/mod/mod_ssl/ssl_template.title-intro.gif \ 350 manual/mod/mod_ssl/ssl_template.title-over.gif \ 351 manual/mod/mod_ssl/ssl_template.title-preface.gif \ 352 manual/mod/mod_ssl/ssl_template.title-ref.gif \ 353 manual/mod/mod_ssl/ssl_template.title-toc.gif \ 354 manual/mod/mod_ssl/ssl_template.title-tutor.gif \ 355 manual/mod/mod_status.html \ 356 manual/mod/mod_unique_id.html \ 357 manual/mod/mod_userdir.html \ 358 manual/mod/mod_usertrack.html \ 359 manual/mod/mod_vhost_alias.html \ 360 manual/mod/module-dict.html \ 361 manual/multilogs.html \ 362 manual/process-model.html \ 363 manual/programs/apxs.html \ 364 manual/programs/dbmmanage.html \ 365 manual/programs/htdigest.html \ 366 manual/programs/htpasswd.html \ 367 manual/programs/httpd.html \ 368 manual/programs/index.html \ 369 manual/programs/logresolve.html \ 370 manual/programs/other.html \ 371 manual/programs/rotatelogs.html \ 372 manual/programs/suexec.html \ 373 manual/sections.html \ 374 manual/server-wide.html \ 375 manual/sitemap.html \ 376 manual/stopping.html \ 377 manual/suexec.html \ 378 manual/urlmapping.html \ 379 manual/vhosts/details.html \ 380 manual/vhosts/examples.html \ 381 manual/vhosts/fd-limits.html \ 382 manual/vhosts/host.html \ 383 manual/vhosts/index.html \ 384 manual/vhosts/ip-based.html \ 385 manual/vhosts/mass.html \ 386 manual/vhosts/name-based.html \ 387 manual/vhosts/vhosts-in-depth.html \ 388 manual/vhosts/virtual-host.html 389 390ICONFILES= \ 391 icons/README \ 392 icons/a.gif \ 393 icons/a.png \ 394 icons/alert.black.gif \ 395 icons/alert.black.png \ 396 icons/alert.red.gif \ 397 icons/alert.red.png \ 398 icons/back.gif \ 399 icons/back.png \ 400 icons/ball.gray.gif \ 401 icons/ball.gray.png \ 402 icons/ball.red.gif \ 403 icons/ball.red.png \ 404 icons/binary.gif \ 405 icons/binary.png \ 406 icons/binhex.gif \ 407 icons/binhex.png \ 408 icons/blank.gif \ 409 icons/blank.png \ 410 icons/bomb.gif \ 411 icons/bomb.png \ 412 icons/box1.gif \ 413 icons/box1.png \ 414 icons/box2.gif \ 415 icons/box2.png \ 416 icons/broken.gif \ 417 icons/broken.png \ 418 icons/burst.gif \ 419 icons/burst.png \ 420 icons/c.gif \ 421 icons/c.png \ 422 icons/comp.blue.gif \ 423 icons/comp.blue.png \ 424 icons/comp.gray.gif \ 425 icons/comp.gray.png \ 426 icons/comp1.gif \ 427 icons/comp1.png \ 428 icons/comp2.gif \ 429 icons/comp2.png \ 430 icons/compressed.gif \ 431 icons/compressed.png \ 432 icons/continued.gif \ 433 icons/continued.png \ 434 icons/dir.gif \ 435 icons/dir.png \ 436 icons/dir2.gif \ 437 icons/dir2.png \ 438 icons/diskimg.gif \ 439 icons/diskimg.png \ 440 icons/doc.gif \ 441 icons/doc.png \ 442 icons/down.gif \ 443 icons/down.png \ 444 icons/dvi.gif \ 445 icons/dvi.png \ 446 icons/f.gif \ 447 icons/f.png \ 448 icons/folder.gif \ 449 icons/folder.open.gif \ 450 icons/folder.open.png \ 451 icons/folder.png \ 452 icons/folder.sec.gif \ 453 icons/folder.sec.png \ 454 icons/forward.gif \ 455 icons/forward.png \ 456 icons/generic.gif \ 457 icons/generic.png \ 458 icons/generic.red.gif \ 459 icons/generic.red.png \ 460 icons/generic.sec.gif \ 461 icons/generic.sec.png \ 462 icons/generic2.gif \ 463 icons/generic2.png \ 464 icons/generic3.gif \ 465 icons/generic3.png \ 466 icons/hand.right.gif \ 467 icons/hand.right.png \ 468 icons/hand.up.gif \ 469 icons/hand.up.png \ 470 icons/icon.sheet.gif \ 471 icons/icon.sheet.png \ 472 icons/image.gif \ 473 icons/image.png \ 474 icons/image1.gif \ 475 icons/image1.png \ 476 icons/image2.gif \ 477 icons/image2.png \ 478 icons/image3.gif \ 479 icons/image3.png \ 480 icons/index.gif \ 481 icons/index.png \ 482 icons/key.gif \ 483 icons/key.png \ 484 icons/layout.gif \ 485 icons/layout.png \ 486 icons/left.gif \ 487 icons/left.png \ 488 icons/link.gif \ 489 icons/link.png \ 490 icons/movie.gif \ 491 icons/movie.png \ 492 icons/p.gif \ 493 icons/p.png \ 494 icons/patch.gif \ 495 icons/patch.png \ 496 icons/pdf.gif \ 497 icons/pdf.png \ 498 icons/pie0.gif \ 499 icons/pie0.png \ 500 icons/pie1.gif \ 501 icons/pie1.png \ 502 icons/pie2.gif \ 503 icons/pie2.png \ 504 icons/pie3.gif \ 505 icons/pie3.png \ 506 icons/pie4.gif \ 507 icons/pie4.png \ 508 icons/pie5.gif \ 509 icons/pie5.png \ 510 icons/pie6.gif \ 511 icons/pie6.png \ 512 icons/pie7.gif \ 513 icons/pie7.png \ 514 icons/pie8.gif \ 515 icons/pie8.png \ 516 icons/portal.gif \ 517 icons/portal.png \ 518 icons/ps.gif \ 519 icons/ps.png \ 520 icons/quill.gif \ 521 icons/quill.png \ 522 icons/rainbow.gif \ 523 icons/rainbow.png \ 524 icons/right.gif \ 525 icons/right.png \ 526 icons/screw1.gif \ 527 icons/screw1.png \ 528 icons/screw2.gif \ 529 icons/screw2.png \ 530 icons/script.gif \ 531 icons/script.png \ 532 icons/sound.gif \ 533 icons/sound.png \ 534 icons/sound1.gif \ 535 icons/sound1.png \ 536 icons/sound2.gif \ 537 icons/sound2.png \ 538 icons/sphere1.gif \ 539 icons/sphere1.png \ 540 icons/sphere2.gif \ 541 icons/sphere2.png \ 542 icons/tar.gif \ 543 icons/tar.png \ 544 icons/tex.gif \ 545 icons/tex.png \ 546 icons/text.gif \ 547 icons/text.png \ 548 icons/transfer.gif \ 549 icons/transfer.png \ 550 icons/unknown.gif \ 551 icons/unknown.png \ 552 icons/up.gif \ 553 icons/up.png \ 554 icons/uu.gif \ 555 icons/uu.png \ 556 icons/uuencoded.gif \ 557 icons/uuencoded.png \ 558 icons/world1.gif \ 559 icons/world1.png \ 560 icons/world2.gif \ 561 icons/world2.png 562 563all: ${.OBJDIR}/config.status 564 @cd ${.OBJDIR} && ${MAKE} OPTIM=${CFLAGS:Q} 565 566BEFOREMAN=${.OBJDIR}/config.status 567 568${.OBJDIR}/config.status : ${.OBJDIR}/config.layout 569 @cd ${.OBJDIR} && CC=${CC:Q} OPTIM=${CFLAGS:Q} \ 570 LD_SHLIB=${CC:Q} PATH=/sbin:/usr/sbin:/bin:/usr/bin \ 571 ${SHELL} configure ${CONFIG_ARGS} 572 diff -u ${.CURDIR}/src/include/ap_config_auto.h ${.OBJDIR}/src/include/ap_config_auto.h.new 573 574.if !exists(${.OBJDIR}/config.layout) 575${.OBJDIR}/config.layout: ${.CURDIR}/config.layout 576 lndir -s -e obj -e obj.${MACHINE_ARCH} -e Makefile.bsd-wrapper \ 577 ${.CURDIR} 578.endif 579 580includes: 581 @-for i in ${INCFILES}; do \ 582 j=$$(basename $$i); \ 583 echo "Installing ${DESTDIR}${HTTPD_INCLUDEDIR}/$$j"; \ 584 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${NONBINMODE} \ 585 ${.CURDIR}/$$i ${DESTDIR}${HTTPD_INCLUDEDIR}; \ 586 done 587 588install: maninstall includes 589 ${INSTALL} -c -o ${DOCOWN} -g ${DOCGRP} -m ${DOCMODE} \ 590 ${.CURDIR}/LICENCE.httpd ${DESTDIR}${DOCDIR}/legal/ 591 @-for i in ${BINFILES}; do \ 592 j=$$(basename $$i); \ 593 echo "Installing ${DESTDIR}${HTTPD_BINDIR}/$$j"; \ 594 ${INSTALL} ${INSTALL_COPY} ${INSTALL_STRIP} -g ${BINGRP} \ 595 -m ${BINMODE} ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_BINDIR}; \ 596 done 597 @-for i in ${SBINFILES}; do \ 598 j=$$(basename $$i); \ 599 echo "Installing ${DESTDIR}${HTTPD_SBINDIR}/$$j"; \ 600 ${INSTALL} ${INSTALL_COPY} ${INSTALL_STRIP} -g ${BINGRP} \ 601 -m ${BINMODE} ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_SBINDIR}; \ 602 done 603 @-for i in ${INSTALL_MODULES}; do \ 604 j=$$(basename $$i); \ 605 echo "Installing ${DESTDIR}${HTTPD_LIBEXECDIR}/$$j"; \ 606 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${NONBINMODE} \ 607 ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_LIBEXECDIR}; \ 608 done 609 @d=$$(mktemp -d /tmp/httpdXXXXXXXXXX); \ 610 echo "Installing ${DESTDIR}${HTTPD_SBINDIR}/apxs"; \ 611 j="sed -e 's;^#!/.*;#!${PERLPATH};' \ 612 -e 's;\@prefix\@;${HTTPD_PREFIX};' \ 613 -e 's;\@sbindir\@;${HTTPD_SBINDIR};' \ 614 -e 's;\@libexecdir\@;${HTTPD_LIBEXECDIR};' \ 615 -e 's;\@includedir\@;${HTTPD_INCLUDEDIR};' \ 616 -e 's;\@sysconfdir\@;${HTTPD_SYSCONFDIR};' \ 617 <${.OBJDIR}/src/support/apxs >$$d/apxs && \ 618 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${BINMODE} \ 619 $$d/apxs ${DESTDIR}${HTTPD_SBINDIR}"; \ 620 echo $$j; \ 621 eval $$j; \ 622 echo "Installing ${DESTDIR}${HTTPD_BINDIR}/dbmmanage"; \ 623 j="sed -e 's;^#!/.*;#!${PERLPATH};' \ 624 <${.OBJDIR}/src/support/dbmmanage >$$d/dbmmanage && \ 625 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${BINMODE} \ 626 $$d/dbmmanage ${DESTDIR}${HTTPD_BINDIR}"; \ 627 echo $$j; \ 628 eval $$j; \ 629 rm -rf $$d 630 631.if ${.OBJDIR} == ${.CURDIR} 632clean: cleanman 633 -@cd ${.OBJDIR} && rm -f ${MUNGEDFILES} && ${MAKE} clean 634.else 635clean: cleanman 636 @cd ${.OBJDIR} && find . \! -type d -print0 | xargs -0r rm 637.endif 638 639cleandir: clean 640 641prereq: 642 643test: 644 645depend: 646 647lint: 648 649tags: 650 651.if defined(NOMAN) && ${NOMAN:L} != "no" 652maninstall: 653 @echo NOMAN is set 654cleanman: 655 @echo NOMAN is set 656.endif 657 658distribution: 659 @-for i in ${MODCONFDIR}; do \ 660 echo "Installing ${DESTDIR}${HTTPD_SYSCONFDIR}/$$i"; \ 661 ${INSTALL} -d -m 755 ${DESTDIR}${HTTPD_SYSCONFDIR}/$$i; \ 662 done 663 @-for i in ${CONFFILES}; do \ 664 j=$$(dirname $$i); \ 665 echo "Installing ${DESTDIR}${HTTPD_PREFIX}/$$i"; \ 666 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${NONBINMODE} \ 667 ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_PREFIX}/$$j/; \ 668 done 669 @-for i in ${HTDOCS}; do \ 670 j=$$(dirname $$i); \ 671 echo "Installing ${DESTDIR}${HTTPD_PREFIX}/$$i"; \ 672 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${NONBINMODE} \ 673 ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_PREFIX}/$$j/; \ 674 done 675 @-for i in ${MANUALFILES}; do \ 676 j=$$(dirname $$i); \ 677 echo "Installing ${DESTDIR}${HTTPD_HTDOCSDIR}/$$i"; \ 678 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${NONBINMODE} \ 679 ${.OBJDIR}/htdocs/$$i ${DESTDIR}${HTTPD_HTDOCSDIR}/$$j/; \ 680 done 681 @-for i in ${CGIFILES}; do \ 682 j=$$(dirname $$i); \ 683 echo "Installing ${DESTDIR}${HTTPD_PREFIX}/$$i"; \ 684 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m 000 \ 685 ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_PREFIX}/$$j/; \ 686 done 687 @-for i in ${ICONFILES}; do \ 688 j=$$(dirname $$i); \ 689 echo "Installing ${DESTDIR}${HTTPD_PREFIX}/$$i"; \ 690 ${INSTALL} ${INSTALL_COPY} -g ${BINGRP} -m ${NONBINMODE} \ 691 ${.OBJDIR}/$$i ${DESTDIR}${HTTPD_PREFIX}/$$j/; \ 692 done 693 694.include <bsd.obj.mk> 695.include <bsd.subdir.mk> 696.if !defined(NOMAN) || ${NOMAN:L} == "no" 697. include <bsd.man.mk> 698.endif 699