Print this page
4843 add --as-needed and --no-as-needed to ld
*** 458,482 ****
break;
case '-':
switch (*(arg + 1)) {
case 'a':
/*
* Translate --allow-multiple-definition to
* -zmuldefs
*/
if ((c = str2chr(lml, ndx, argc, argv, arg, 'z',
MSG_ORIG(MSG_ARG_T_MULDEFS), 0, NULL)) !=
0) {
optarg =
(char *)MSG_ORIG(MSG_ARG_MULDEFS);
return (c);
!
/*
* Translate --auxiliary <optarg> to
* -f <optarg>
*/
! } else if ((c = str2chr(lml, argc, ndx, argv,
arg, 'f', MSG_ORIG(MSG_ARG_T_AUXFLTR),
MSG_ARG_T_AUXFLTR_SIZE, NULL)) != 0) {
return (c);
}
break;
--- 458,492 ----
break;
case '-':
switch (*(arg + 1)) {
case 'a':
/*
+ * Translate --as-needed to -zignore
+ */
+ if ((c = str2chr(lml, ndx, argc, argv, arg, 'z',
+ MSG_ORIG(MSG_ARG_T_ASNEEDED), 0, NULL)) !=
+ 0) {
+ optarg =
+ (char *)MSG_ORIG(MSG_ARG_IGNORE);
+ return (c);
+ }
+ /*
* Translate --allow-multiple-definition to
* -zmuldefs
*/
if ((c = str2chr(lml, ndx, argc, argv, arg, 'z',
MSG_ORIG(MSG_ARG_T_MULDEFS), 0, NULL)) !=
0) {
optarg =
(char *)MSG_ORIG(MSG_ARG_MULDEFS);
return (c);
! }
/*
* Translate --auxiliary <optarg> to
* -f <optarg>
*/
! if ((c = str2chr(lml, argc, ndx, argv,
arg, 'f', MSG_ORIG(MSG_ARG_T_AUXFLTR),
MSG_ARG_T_AUXFLTR_SIZE, NULL)) != 0) {
return (c);
}
break;
*** 556,565 ****
--- 566,585 ----
return (c);
}
break;
case 'n':
/*
+ * Translate --no-as-needed to -zrecord
+ */
+ if ((c = str2chr(lml, ndx, argc, argv, arg, 'z',
+ MSG_ORIG(MSG_ARG_T_NOASNEEDED), 0, NULL)) !=
+ 0) {
+ optarg =
+ (char *)MSG_ORIG(MSG_ARG_RECORD);
+ return (c);
+ }
+ /*
* Translate --no-fatal-warnings to
* -z nofatal-warnings.
*/
if ((c = str2chr(lml, ndx, argc, argv, arg, 'z',
MSG_ORIG(MSG_ARG_T_NOFATWARN),