cc-wrapper: Wrap/link all other GNAT commands

+34 -17
+8 -3
pkgs/build-support/cc-wrapper/default.nix
··· 236 236 fi 237 237 '' 238 238 239 + # No need to wrap gnat, gnatkr, gnatname or gnatprep; we can just symlink them in 239 240 + optionalString cc.langAda or false '' 240 - wrap ${targetPrefix}gnatmake ${./gnat-wrapper.sh} $ccPath/${targetPrefix}gnatmake 241 - wrap ${targetPrefix}gnatbind ${./gnat-wrapper.sh} $ccPath/${targetPrefix}gnatbind 242 - wrap ${targetPrefix}gnatlink ${./gnat-wrapper.sh} $ccPath/${targetPrefix}gnatlink 241 + for cmd in gnatbind gnatchop gnatclean gnatlink gnatls gnatmake; do 242 + wrap ${targetPrefix}$cmd ${./gnat-wrapper.sh} $ccPath/${targetPrefix}$cmd 243 + done 244 + 245 + for cmd in gnat gnatkr gnatname gnatprep; do 246 + ln -s $ccPath/${targetPrefix}$cmd $out/bin/${targetPrefix}$cmd 247 + done 243 248 244 249 # this symlink points to the unwrapped gnat's output "out". It is used by 245 250 # our custom gprconfig compiler description to find GNAT's ada runtime. See
+26 -14
pkgs/build-support/cc-wrapper/gnat-wrapper.sh
··· 127 127 params=(${rest+"${rest[@]}"}) 128 128 fi 129 129 130 - if [ "$(basename $0)x" = "gnatmakex" ]; then 131 - extraBefore=("--GNATBIND=@out@/bin/gnatbind" "--GNATLINK=@out@/bin/gnatlink") 132 - extraAfter=($NIX_GNATFLAGS_COMPILE_@suffixSalt@ -cargs $NIX_GNATMAKE_CARGS_@suffixSalt@) 133 - fi 134 - 135 - if [ "$(basename $0)x" = "gnatbindx" ]; then 136 - extraBefore=() 137 - extraAfter=($NIX_GNATFLAGS_COMPILE_@suffixSalt@) 138 - fi 139 - 140 - if [ "$(basename $0)x" = "gnatlinkx" ]; then 141 - extraBefore=() 142 - extraAfter=("--GCC=@out@/bin/gcc") 143 - fi 130 + case "$(basename $0)x" in 131 + "gnatbindx") 132 + extraBefore=() 133 + extraAfter=($NIX_GNATFLAGS_COMPILE_@suffixSalt@) 134 + ;; 135 + "gnatchopx") 136 + extraBefore=("--GCC=@out@/bin/gcc") 137 + extraAfter=() 138 + ;; 139 + "gnatcleanx") 140 + extraBefore=($NIX_GNATFLAGS_COMPILE_@suffixSalt@) 141 + extraAfter=() 142 + ;; 143 + "gnatlinkx") 144 + extraBefore=() 145 + extraAfter=("--GCC=@out@/bin/gcc") 146 + ;; 147 + "gnatlsx") 148 + extraBefore=() 149 + extraAfter=($NIX_GNATFLAGS_COMPILE_@suffixSalt@) 150 + ;; 151 + "gnatmakex") 152 + extraBefore=("--GNATBIND=@out@/bin/gnatbind" "--GNATLINK=@out@/bin/gnatlink") 153 + extraAfter=($NIX_GNATFLAGS_COMPILE_@suffixSalt@ -cargs $NIX_GNATMAKE_CARGS_@suffixSalt@) 154 + ;; 155 + esac 144 156 145 157 # As a very special hack, if the arguments are just `-v', then don't 146 158 # add anything. This is to prevent `gcc -v' (which normally prints