1XCOMM $Xorg: os2.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $
2
3
4
5XCOMM platform:  $XFree86: xc/config/cf/os2.rules,v 3.23tsi Exp $
6
7.SUFFIXES: .Osuf .c .CCsuf
8
9.c.Osuf:
10	$(CC) $(CFLAGS) -c $*.c
11
12#if HasCplusplus
13.CCsuf.Osuf:
14	$(CXX) $(CFLAGS) -c $*.CCsuf
15#endif
16
17#ifndef UseInstalled
18#define XkbComp /xkbcomp
19#else
20#define XkbComp xkbcomp
21#endif
22
23/*
24 * same problem as with cygwin...
25 * DependDependencyStatement - Imake.rules wraps $(DEPEND) in
26 * ProgramTargetName(), which causes cross compiling to think that
27 * $(DEPEND) hasn't been built, as $(DEPEND) is a host tool, and should
28 * not be wrapped with ProgramTargetName().  Perhaps there should be
29 * a HostProgramTargetName()...
30 */
31#ifndef DependDependencyStatement
32#define DependDependencyStatement()                                     @@\
33depend:: $(DEPEND)
34#endif
35	DEPEND2 = $(SHELL) $(DEPEND)
36
37/*
38 * DependDependency - Imake.rules wraps $(DEPEND) in ProgramTargetName().
39 * This doesn't work when cross compiling, see the locally defined
40 * DependDependencyStatement comment (above) for more information.
41 */
42
43#ifndef DependDependency
44#ifdef UseInstalled
45#define DependDependency() /**/
46#else
47#define DependDependency()						@@\
48DependDependencyStatement()						@@\
49									@@\
50NoCmpScript($(DEPEND))							@@\
51									@@\
52$(DEPEND):								@@\
53	@echo "checking $@ over in $(DEPENDSRC) first..."; \		@@\
54	cd $(DEPENDSRC) && $(MAKE) makedependonly; \			@@\
55	echo "okay, continuing in $(CURRENT_DIR)"
56
57#endif /* UseInstalled */
58#endif /* DependDependency */
59
60/*
61 * HostLinkRule - link a utility to be used on the build host
62 * (differs from LinkRule if cross compiling)
63 */
64#ifndef HostLinkRule
65#define HostLinkRule(program,options,objects,libraries) \
66$(CCLINK) -Zmtd -o program options objects libraries $(EXTRA_LOAD_FLAGS)
67#endif
68
69#ifndef DependTarget
70#define	DependTarget()							@@\
71DependDependency()							@@\
72									@@\
73depend::								@@\
74	$(SHELL) $(DEPEND) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)
75#endif /* DependTarget */
76
77/*
78 * DependTarget3 - generate rules to compute dependencies for all files given.
79 */
80#ifndef DependTarget3
81#define	DependTarget3(srcs1,srcs2,srcs3)				@@\
82DependDependency()							@@\
83									@@\
84depend::								@@\
85	$(SHELL) $(DEPEND) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs1	@@\
86	$(SHELL) $(DEPEND) -a $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs2	@@\
87	$(SHELL) $(DEPEND) -a $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs3
88#endif /* DependTarget3 */
89
90#ifdef UseInstalled
91#define RmanDependency() /**/
92#else
93#define RmanDependency()						@@\
94NoCmpScript(ProgramTargetName($(RMAN)))					@@\
95									@@\
96ProgramTargetName($(RMAN)):						@@\
97	@echo "checking $@ over in $(TOP)/config/util first..."; \	@@\
98	echo "okay, continuing in $(CURRENT_DIR)"
99
100#endif /* UseInstalled */
101
102#define MakeXkbDir(basedir,subdir)					@@\
103all::   Concat(subdir,.dir)						@@\
104									@@\
105Concat(subdir,.dir):							@@\
106	RemoveFile(Concat(subdir,.dir))					@@\
107	XkbComp -lfhlpR -o Concat(subdir,.dir) *			@@\
108									@@\
109InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir)	@@\
110									@@\
111clean::									@@\
112	RemoveFile(Concat(subdir,.dir))
113