VirtualBox

source: vbox/trunk/src/libs/openssl-3.0.7/vbox-pragma-once.sed@ 98108

Last change on this file since 98108 was 97984, checked in by vboxsync, 23 months ago

libs/openssl-3.0.7: Shut up pragma once warnings for internal headers. Added sed script for doing that. bugref:10317

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Author Date Id Revision
File size: 1.8 KB
Line 
1# $Id: vbox-pragma-once.sed 97984 2023-01-04 22:18:17Z vboxsync $
2## @file
3# Wraps #pragma once up in #ifndef RT_WITHOUT_PRAGMA_ONCE...#endif.
4#
5# This is for gcc 3.3.x and older which considers #pragma once as obsolete and
6# warns about it unconditionally. This results in gigantic ValKit build logs
7# and makes them hard to search for actual problems.
8#
9# Apply to include/crypto/*.h and include/internal/*.h with the modify
10# in-place option of sed (not on windows, no eol attribs!):
11# kmk_sed -f vbox-pragma-once.sed -i include/crypto/*.h include/internal/*.h
12#
13
14#
15# Copyright (C) 2006-2022 Oracle and/or its affiliates.
16#
17# This file is part of VirtualBox base platform packages, as
18# available from https://www.virtualbox.org.
19#
20# This program is free software; you can redistribute it and/or
21# modify it under the terms of the GNU General Public License
22# as published by the Free Software Foundation, in version 3 of the
23# License.
24#
25# This program is distributed in the hope that it will be useful, but
26# WITHOUT ANY WARRANTY; without even the implied warranty of
27# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
28# General Public License for more details.
29#
30# You should have received a copy of the GNU General Public License
31# along with this program; if not, see <https://www.gnu.org/licenses>.
32#
33# SPDX-License-Identifier: GPL-3.0-only
34#
35
36# Don't apply to already patched files, so if we see RT_WITHOUT_PRAGMA_ONCE
37# we read in a few more lines.
38/RT_WITHOUT_PRAGMA_ONCE/!b next
39
40:skip
41N
42N
43N
44b end
45
46:next
47# Wrap pragma once in #ifndef RT_WITHOUT_PRAGMA_ONCE.
48s,^\([[:space:]]*[#][[:space:]]*\)pragma[[:space:]][[:space:]]*once\(.*\)$,\1ifndef RT_WITHOUT_PRAGMA_ONCE /* VBOX */\n\1pragma once\2\n\1endif /* VBOX */,
49
50:end
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette