cet.sh 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. PARSE_AND_LIST_OPTIONS_CET='
  2. fprintf (file, _("\
  3. -z ibtplt Generate IBT-enabled PLT entries\n"));
  4. fprintf (file, _("\
  5. -z ibt Generate GNU_PROPERTY_X86_FEATURE_1_IBT\n"));
  6. fprintf (file, _("\
  7. -z shstk Generate GNU_PROPERTY_X86_FEATURE_1_SHSTK\n"));
  8. fprintf (file, _("\
  9. -z cet-report=[none|warning|error] (default: none)\n\
  10. Report missing IBT and SHSTK properties\n"));
  11. '
  12. PARSE_AND_LIST_ARGS_CASE_Z_CET='
  13. else if (strcmp (optarg, "ibtplt") == 0)
  14. params.ibtplt = true;
  15. else if (strcmp (optarg, "ibt") == 0)
  16. params.ibt = true;
  17. else if (strcmp (optarg, "shstk") == 0)
  18. params.shstk = true;
  19. else if (strncmp (optarg, "cet-report=", 11) == 0)
  20. {
  21. if (strcmp (optarg + 11, "none") == 0)
  22. params.cet_report = prop_report_none;
  23. else if (strcmp (optarg + 11, "warning") == 0)
  24. params.cet_report = (prop_report_warning
  25. | prop_report_ibt
  26. | prop_report_shstk);
  27. else if (strcmp (optarg + 11, "error") == 0)
  28. params.cet_report = (prop_report_error
  29. | prop_report_ibt
  30. | prop_report_shstk);
  31. else
  32. einfo (_("%F%P: invalid option for -z cet-report=: %s\n"),
  33. optarg + 11);
  34. }
  35. '
  36. PARSE_AND_LIST_OPTIONS="$PARSE_AND_LIST_OPTIONS $PARSE_AND_LIST_OPTIONS_CET"
  37. PARSE_AND_LIST_ARGS_CASE_Z="$PARSE_AND_LIST_ARGS_CASE_Z $PARSE_AND_LIST_ARGS_CASE_Z_CET"