Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
fed8f1cb
Commit
fed8f1cb
authored
Feb 15, 2002
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Modified makedep to handle #include <> correctly (based on a patch by
Patrik Stridvall).
parent
651a8ba8
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
15 additions
and
5 deletions
+15
-5
makedep.c
tools/makedep.c
+15
-5
No files found.
tools/makedep.c
View file @
fed8f1cb
...
...
@@ -11,7 +11,7 @@
#include <unistd.h>
/* Max first-level includes per file */
#define MAX_INCLUDES
124
#define MAX_INCLUDES
200
typedef
struct
_INCL_FILE
{
...
...
@@ -20,6 +20,7 @@ typedef struct _INCL_FILE
char
*
filename
;
struct
_INCL_FILE
*
included_by
;
/* file that included this one */
int
included_line
;
/* line where this file was included */
int
system
;
/* is it a system include (#include <name>) */
struct
_INCL_FILE
*
owner
;
struct
_INCL_FILE
*
files
[
MAX_INCLUDES
];
}
INCL_FILE
;
...
...
@@ -134,7 +135,7 @@ static INCL_FILE *add_src_file( const char *name )
*
* Add an include file if it doesn't already exists.
*/
static
INCL_FILE
*
add_include
(
INCL_FILE
*
pFile
,
const
char
*
name
,
int
line
)
static
INCL_FILE
*
add_include
(
INCL_FILE
*
pFile
,
const
char
*
name
,
int
line
,
int
system
)
{
INCL_FILE
**
p
=
&
firstInclude
;
int
pos
;
...
...
@@ -155,6 +156,7 @@ static INCL_FILE *add_include( INCL_FILE *pFile, const char *name, int line )
(
*
p
)
->
name
=
xstrdup
(
name
);
(
*
p
)
->
included_by
=
pFile
;
(
*
p
)
->
included_line
=
line
;
(
*
p
)
->
system
=
system
||
pFile
->
system
;
}
pFile
->
files
[
pos
]
=
*
p
;
return
*
p
;
...
...
@@ -207,6 +209,8 @@ static FILE *open_include_file( INCL_FILE *pFile )
}
free
(
filename
);
}
if
(
!
file
&&
pFile
->
system
)
return
NULL
;
/* ignore system files we cannot find */
/* try in src file directory */
if
(
!
file
)
{
...
...
@@ -224,6 +228,7 @@ static FILE *open_include_file( INCL_FILE *pFile )
if
(
!
file
)
{
if
(
pFile
->
included_by
->
system
)
return
NULL
;
/* ignore if included by a system file */
if
(
firstPath
)
perror
(
pFile
->
name
);
else
fprintf
(
stderr
,
"%s: %s: File not found
\n
"
,
ProgramName
,
pFile
->
name
);
...
...
@@ -257,9 +262,11 @@ static void parse_file( INCL_FILE *pFile, int src )
}
file
=
src
?
open_src_file
(
pFile
)
:
open_include_file
(
pFile
);
if
(
!
file
)
return
;
while
(
fgets
(
buffer
,
sizeof
(
buffer
)
-
1
,
file
))
{
char
quote
;
char
*
p
=
buffer
;
line
++
;
while
(
*
p
&&
isspace
(
*
p
))
p
++
;
...
...
@@ -268,9 +275,11 @@ static void parse_file( INCL_FILE *pFile, int src )
if
(
strncmp
(
p
,
"include"
,
7
))
continue
;
p
+=
7
;
while
(
*
p
&&
isspace
(
*
p
))
p
++
;
if
(
*
p
++
!=
'\"'
)
continue
;
if
(
*
p
!=
'\"'
&&
*
p
!=
'<'
)
continue
;
quote
=
*
p
++
;
if
(
quote
==
'<'
)
quote
=
'>'
;
include
=
p
;
while
(
*
p
&&
(
*
p
!=
'\"'
))
p
++
;
while
(
*
p
&&
(
*
p
!=
quote
))
p
++
;
if
(
!*
p
)
{
fprintf
(
stderr
,
"%s:%d: Malformed #include directive
\n
"
,
...
...
@@ -278,7 +287,7 @@ static void parse_file( INCL_FILE *pFile, int src )
exit
(
1
);
}
*
p
=
0
;
add_include
(
pFile
,
include
,
line
);
add_include
(
pFile
,
include
,
line
,
(
quote
==
'>'
)
);
}
fclose
(
file
);
}
...
...
@@ -293,6 +302,7 @@ static void output_include( FILE *file, INCL_FILE *pFile,
int
i
;
if
(
pFile
->
owner
==
owner
)
return
;
if
(
!
pFile
->
filename
)
return
;
pFile
->
owner
=
owner
;
if
(
*
column
+
strlen
(
pFile
->
filename
)
+
1
>
70
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment