1*a34d5fb1SAntonio Huete Jimenez# $Id: links.mk,v 1.7 2020/08/19 17:51:53 sjg Exp $ 25f1e34d9SAlexandre Perrin# 35f1e34d9SAlexandre Perrin# @(#) Copyright (c) 2005, Simon J. Gerraty 45f1e34d9SAlexandre Perrin# 55f1e34d9SAlexandre Perrin# This file is provided in the hope that it will 65f1e34d9SAlexandre Perrin# be of use. There is absolutely NO WARRANTY. 75f1e34d9SAlexandre Perrin# Permission to copy, redistribute or otherwise 85f1e34d9SAlexandre Perrin# use this file is hereby granted provided that 95f1e34d9SAlexandre Perrin# the above copyright notice and this notice are 105f1e34d9SAlexandre Perrin# left intact. 115f1e34d9SAlexandre Perrin# 125f1e34d9SAlexandre Perrin# Please send copies of changes and bug-fixes to: 135f1e34d9SAlexandre Perrin# sjg@crufty.net 145f1e34d9SAlexandre Perrin# 155f1e34d9SAlexandre Perrin 165f1e34d9SAlexandre Perrin# some platforms need something special 175f1e34d9SAlexandre PerrinLN?= ln 185f1e34d9SAlexandre PerrinECHO?= echo 195f1e34d9SAlexandre Perrin 205f1e34d9SAlexandre PerrinLINKS?= 215f1e34d9SAlexandre PerrinSYMLINKS?= 225f1e34d9SAlexandre Perrin 235f1e34d9SAlexandre Perrin__SYMLINK_SCRIPT= \ 245f1e34d9SAlexandre Perrin ${ECHO} "$$t -> $$l"; \ 256a91b982SJohn Marino case `'ls' -l $$t 2> /dev/null` in \ 266a91b982SJohn Marino *"> $$l") ;; \ 276a91b982SJohn Marino *) \ 285f1e34d9SAlexandre Perrin mkdir -p `dirname $$t`; \ 295f1e34d9SAlexandre Perrin rm -f $$t; \ 306a91b982SJohn Marino ${LN} -s $$l $$t;; \ 316a91b982SJohn Marino esac 326a91b982SJohn Marino 335f1e34d9SAlexandre Perrin 345f1e34d9SAlexandre Perrin__LINK_SCRIPT= \ 355f1e34d9SAlexandre Perrin ${ECHO} "$$t -> $$l"; \ 365f1e34d9SAlexandre Perrin mkdir -p `dirname $$t`; \ 375f1e34d9SAlexandre Perrin rm -f $$t; \ 385f1e34d9SAlexandre Perrin ${LN} $$l $$t 395f1e34d9SAlexandre Perrin 405f1e34d9SAlexandre Perrin_SYMLINKS_SCRIPT= \ 415f1e34d9SAlexandre Perrin while test $$\# -ge 2; do \ 425f1e34d9SAlexandre Perrin l=$$1; shift; \ 435f1e34d9SAlexandre Perrin t=${DESTDIR}$$1; shift; \ 445f1e34d9SAlexandre Perrin ${__SYMLINK_SCRIPT}; \ 455f1e34d9SAlexandre Perrin done; :; 465f1e34d9SAlexandre Perrin 475f1e34d9SAlexandre Perrin_LINKS_SCRIPT= \ 485f1e34d9SAlexandre Perrin while test $$\# -ge 2; do \ 495f1e34d9SAlexandre Perrin l=${DESTDIR}$$1; shift; \ 505f1e34d9SAlexandre Perrin t=${DESTDIR}$$1; shift; \ 515f1e34d9SAlexandre Perrin ${__LINK_SCRIPT}; \ 525f1e34d9SAlexandre Perrin done; :; 535f1e34d9SAlexandre Perrin 545f1e34d9SAlexandre Perrin_SYMLINKS_USE: .USE 555f1e34d9SAlexandre Perrin @set ${$@_SYMLINKS:U${SYMLINKS}}; ${_SYMLINKS_SCRIPT} 565f1e34d9SAlexandre Perrin 575f1e34d9SAlexandre Perrin_LINKS_USE: .USE 585f1e34d9SAlexandre Perrin @set ${$@_LINKS:U${LINKS}}; ${_LINKS_SCRIPT} 595f1e34d9SAlexandre Perrin 605f1e34d9SAlexandre Perrin 615f1e34d9SAlexandre Perrin# sometimes we want to ensure DESTDIR is ignored 625f1e34d9SAlexandre Perrin_BUILD_SYMLINKS_SCRIPT= \ 635f1e34d9SAlexandre Perrin while test $$\# -ge 2; do \ 645f1e34d9SAlexandre Perrin l=$$1; shift; \ 655f1e34d9SAlexandre Perrin t=$$1; shift; \ 665f1e34d9SAlexandre Perrin ${__SYMLINK_SCRIPT}; \ 675f1e34d9SAlexandre Perrin done; :; 685f1e34d9SAlexandre Perrin 695f1e34d9SAlexandre Perrin_BUILD_LINKS_SCRIPT= \ 705f1e34d9SAlexandre Perrin while test $$\# -ge 2; do \ 715f1e34d9SAlexandre Perrin l=$$1; shift; \ 725f1e34d9SAlexandre Perrin t=$$1; shift; \ 735f1e34d9SAlexandre Perrin ${__LINK_SCRIPT}; \ 745f1e34d9SAlexandre Perrin done; :; 755f1e34d9SAlexandre Perrin 765f1e34d9SAlexandre Perrin_BUILD_SYMLINKS_USE: .USE 775f1e34d9SAlexandre Perrin @set ${$@_SYMLINKS:U${SYMLINKS}}; ${_BUILD_SYMLINKS_SCRIPT} 785f1e34d9SAlexandre Perrin 795f1e34d9SAlexandre Perrin_BUILD_LINKS_USE: .USE 805f1e34d9SAlexandre Perrin @set ${$@_LINKS:U${LINKS}}; ${_BUILD_LINKS_SCRIPT} 81