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
d9a75184
Commit
d9a75184
authored
Oct 15, 2013
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
makefiles: Generate explicit build rules for idl files from makedep.
parent
25b08106
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
39 additions
and
52 deletions
+39
-52
Make.rules.in
Make.rules.in
+2
-30
makedep.c
tools/makedep.c
+37
-22
No files found.
Make.rules.in
View file @
d9a75184
...
...
@@ -36,7 +36,7 @@ CROSSOBJS = $(OBJS:.o=.cross.o)
# Implicit rules
.SUFFIXES: .
idl .tlb .h .ok .man.in .man _c.c _i.c _p.c _s.c _r.res _t.res
.cross.o .po .mo @MAINTAINER_MODE@ .sfd .ttf .svg .ico .bmp
.SUFFIXES: .
ok .man.in .man
.cross.o .po .mo @MAINTAINER_MODE@ .sfd .ttf .svg .ico .bmp
.c.o:
$(CC) -c $(ALLCFLAGS) -o $@ $<
...
...
@@ -47,30 +47,6 @@ CROSSOBJS = $(OBJS:.o=.cross.o)
.c.cross.o:
$(CROSSCC) -c $(INCLUDES) $(DEFS) -DWINE_CROSSTEST $(CPPFLAGS) $(CFLAGS) -o $@ $<
.idl.h:
$(WIDL) $(IDLFLAGS) -h -o $@ $<
.idl_c.c:
$(WIDL) $(IDLFLAGS) -c -o $@ $<
.idl_i.c:
$(WIDL) $(IDLFLAGS) -u -o $@ $<
.idl_p.c:
$(WIDL) $(IDLFLAGS) -p -o $@ $<
.idl_r.res:
$(WIDL) $(IDLFLAGS) -r -o $@ $<
.idl_s.c:
$(WIDL) $(IDLFLAGS) -s -o $@ $<
.idl.tlb:
$(WIDL) $(TARGETFLAGS) $(IDLFLAGS) -t -o $@ $<
.idl_t.res:
$(WIDL) $(TARGETFLAGS) $(IDLFLAGS) -t -o $@ $<
.c.ok:
$(RUNTEST) $(RUNTESTFLAGS) $< && touch $@
...
...
@@ -129,7 +105,7 @@ $(IMPORTLIB:%=lib%.cross.a): $(MAINSPEC) $(IMPLIB_SRCS:.c=.cross.o)
# Rules for dependencies
DEPEND_SRCS = $(C_SRCS) $(OBJC_SRCS) $(RC_SRCS) $(MC_SRCS) $(PO_SRCS:.rc=.pot) \
$(IDL_H_SRCS) $(IDL_C_SRCS) $(IDL_I_SRCS) $(IDL_P_SRCS) $(IDL_S_SRCS) \
$(IDL_H_SRCS) $(IDL_C_SRCS) $(IDL_I_SRCS) $(IDL_P_SRCS) $(IDL_
R_SRCS) $(IDL_
S_SRCS) \
$(IDL_GEN_C_SRCS) $(IDL_R_SRCS:.idl=_r.res) $(IDL_TLB_SRCS) $(IDL_TLB_SRCS:.idl=.tlb) \
$(BISON_SRCS) $(LEX_SRCS) $(EXTRA_OBJS)
...
...
@@ -207,8 +183,4 @@ install install-lib install-dev uninstall::
.PHONY: install install-lib install-dev uninstall
# Misc. rules
$(IDL_GEN_HEADERS) $(IDL_GEN_C_SRCS) $(IDL_TLB_SRCS:.idl=.tlb) $(IDL_TLB_RES) $(IDL_R_SRCS:.idl=_r.res): $(WIDL)
# End of global rules
tools/makedep.c
View file @
d9a75184
...
...
@@ -1005,36 +1005,51 @@ static void output_sources(void)
}
else
if
(
!
strcmp
(
ext
,
"idl"
))
/* IDL file */
{
char
*
name
;
int
got_header
=
0
;
const
char
*
suffix
=
"cips"
;
char
*
targets
[
8
];
int
nb_targets
=
0
;
char
ending
[]
=
"_?.c"
;
const
char
*
suffix
;
char
*
header
=
strmake
(
"%s.h"
,
obj
);
name
=
strmake
(
"%s.tlb"
,
obj
);
if
(
find_src_file
(
name
))
column
+=
output
(
"%s %s_t.res"
,
name
,
obj
);
else
if
(
find_target_src_file
(
source
->
name
,
".tlb"
))
{
got_header
=
1
;
column
+=
output
(
"%s.h"
,
obj
);
output
(
"%s.tlb %s_t.res: $(WIDL)
\n
"
,
obj
,
obj
);
output
(
"
\t
$(WIDL) $(TARGETFLAGS) $(IDLFLAGS) -t -o $@ %s
\n
"
,
source
->
filename
);
targets
[
nb_targets
++
]
=
strmake
(
"%s.tlb"
,
obj
);
targets
[
nb_targets
++
]
=
strmake
(
"%s_t.res"
,
obj
);
}
free
(
name
);
while
(
*
suffix
)
for
(
suffix
=
"cips"
;
*
suffix
;
suffix
++
)
{
name
=
strmake
(
"%s_%c.c"
,
obj
,
*
suffix
);
if
(
find_src_file
(
name
))
{
if
(
!
got_header
++
)
column
+=
output
(
" %s.h"
,
obj
);
column
+=
output
(
" %s"
,
name
);
}
free
(
name
);
suffix
++
;
ending
[
1
]
=
*
suffix
;
if
(
!
find_target_src_file
(
source
->
name
,
ending
))
continue
;
output
(
"%s%s: $(WIDL)
\n
"
,
obj
,
ending
);
output
(
"
\t
$(WIDL) $(IDLFLAGS) -%c -o $@ %s
\n
"
,
*
suffix
==
'i'
?
'u'
:
*
suffix
,
source
->
filename
);
targets
[
nb_targets
++
]
=
strmake
(
"%s%s"
,
obj
,
ending
);
}
name
=
strmake
(
"%s_r.res"
,
obj
);
if
(
find_src_file
(
name
))
column
+=
output
(
" %s"
,
name
);
free
(
name
);
if
(
find_target_src_file
(
source
->
name
,
"_r.res"
))
{
output
(
"%s_r.res: $(WIDL)
\n
"
,
obj
);
output
(
"
\t
$(WIDL) $(IDLFLAGS) -r -o $@ %s
\n
"
,
source
->
filename
);
targets
[
nb_targets
++
]
=
strmake
(
"%s_r.res"
,
obj
);
}
column
+=
output
(
": %s"
,
source
->
filename
);
if
(
!
nb_targets
||
find_include_file
(
header
))
{
output
(
"%s.h: $(WIDL)
\n
"
,
obj
);
output
(
"
\t
$(WIDL) $(IDLFLAGS) -h -o $@ %s
\n
"
,
source
->
filename
);
targets
[
nb_targets
++
]
=
header
;
}
else
free
(
header
);
for
(
i
=
0
;
i
<
nb_targets
;
i
++
)
{
column
+=
output
(
"%s%c"
,
targets
[
i
],
i
<
nb_targets
-
1
?
' '
:
':'
);
free
(
targets
[
i
]
);
}
column
+=
output
(
" %s"
,
source
->
filename
);
}
else
if
(
!
strcmp
(
ext
,
"tlb"
)
||
!
strcmp
(
ext
,
"res"
)
||
!
strcmp
(
ext
,
"pot"
))
{
...
...
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