Statistiques
| Révision :

root / tmp / org.txm.setups / nsis / Include / Util.nsh @ 2021

Historique | Voir | Annoter | Télécharger (1,71 ko)

1 728 mdecorde
; ---------------------
2 728 mdecorde
;       Util.nsh
3 728 mdecorde
; ---------------------
4 728 mdecorde
;
5 728 mdecorde
; Voodoo macros to make end-user usage easier. This may be documented someday.
6 728 mdecorde
7 728 mdecorde
!verbose push
8 728 mdecorde
!verbose 3
9 728 mdecorde
10 728 mdecorde
!ifndef ___UTIL__NSH___
11 728 mdecorde
!define ___UTIL__NSH___
12 728 mdecorde
13 728 mdecorde
# see WinVer.nsh and *Func.nsh for usage examples
14 728 mdecorde
!macro CallArtificialFunction NAME
15 728 mdecorde
  !ifndef __UNINSTALL__
16 728 mdecorde
    !define CallArtificialFunction_TYPE inst
17 728 mdecorde
  !else
18 728 mdecorde
    !define CallArtificialFunction_TYPE uninst
19 728 mdecorde
  !endif
20 728 mdecorde
  Call :.${NAME}${CallArtificialFunction_TYPE}
21 728 mdecorde
  !ifndef ${NAME}${CallArtificialFunction_TYPE}_DEFINED
22 728 mdecorde
    Goto ${NAME}${CallArtificialFunction_TYPE}_DONE
23 728 mdecorde
    !define ${NAME}${CallArtificialFunction_TYPE}_DEFINED
24 728 mdecorde
    .${NAME}${CallArtificialFunction_TYPE}:
25 728 mdecorde
      !insertmacro ${NAME}
26 728 mdecorde
    Return
27 728 mdecorde
    ${NAME}${CallArtificialFunction_TYPE}_DONE:
28 728 mdecorde
  !endif
29 728 mdecorde
  !undef CallArtificialFunction_TYPE
30 728 mdecorde
!macroend
31 728 mdecorde
!define CallArtificialFunction `!insertmacro CallArtificialFunction`
32 728 mdecorde
33 728 mdecorde
# for usage of artificial functions inside artificial functions
34 728 mdecorde
# macro recursion is prohibited
35 728 mdecorde
!macro CallArtificialFunction2 NAME
36 728 mdecorde
  !ifndef __UNINSTALL__
37 728 mdecorde
    !define CallArtificialFunction2_TYPE inst
38 728 mdecorde
  !else
39 728 mdecorde
    !define CallArtificialFunction2_TYPE uninst
40 728 mdecorde
  !endif
41 728 mdecorde
  Call :.${NAME}${CallArtificialFunction2_TYPE}
42 728 mdecorde
  !ifndef ${NAME}${CallArtificialFunction2_TYPE}_DEFINED
43 728 mdecorde
    Goto ${NAME}${CallArtificialFunction2_TYPE}_DONE
44 728 mdecorde
    !define ${NAME}${CallArtificialFunction2_TYPE}_DEFINED
45 728 mdecorde
    .${NAME}${CallArtificialFunction2_TYPE}:
46 728 mdecorde
      !insertmacro ${NAME}
47 728 mdecorde
    Return
48 728 mdecorde
    ${NAME}${CallArtificialFunction2_TYPE}_DONE:
49 728 mdecorde
  !endif
50 728 mdecorde
  !undef CallArtificialFunction2_TYPE
51 728 mdecorde
!macroend
52 728 mdecorde
!define CallArtificialFunction2 `!insertmacro CallArtificialFunction2`
53 728 mdecorde
54 728 mdecorde
!endif # !___UTIL__NSH___
55 728 mdecorde
56 728 mdecorde
!verbose pop