dtprintinfo: fix a mulit-core build race, for realz this time
[oweals/cde.git] / cde / programs / dtprintinfo / Makefile.am
1 MAINTAINERCLEANFILES = Makefile.in
2
3 bin_PROGRAMS = dtprintinfo
4
5 AM_CPPFLAGS = -I./UI -I./libUI -I./util -I./libUI/MotifUI -I./objects   \
6         -I./objects/PrintObj -DKORNSHELL=\"$(KSH)\"
7
8 dtprintinfo_LDADD = $(DTCLIENTLIBS) $(XTOOLLIB)
9
10 UTIL_SRC = util/Invoke.C util/Invoke.h util/Process.C util/Process.h
11
12 LIBUI_SRC = libUI/BaseUI.C libUI/BaseUI.h libUI/MotifUI/Application.C   \
13         libUI/MotifUI/LabelObj.C libUI/MotifUI/Application.h            \
14         libUI/MotifUI/LabelObj.h libUI/MotifUI/Button.C                 \
15         libUI/MotifUI/MainWindow.C libUI/MotifUI/Button.h               \
16         libUI/MotifUI/MainWindow.h libUI/MotifUI/ComboBoxObj.C          \
17         libUI/MotifUI/MenuBar.C libUI/MotifUI/ComboBoxObj.h             \
18         libUI/MotifUI/MenuBar.h libUI/MotifUI/Container.C               \
19         libUI/MotifUI/Menu.C libUI/MotifUI/Container.h                  \
20         libUI/MotifUI/Menu.h libUI/MotifUI/Dialog.C                     \
21         libUI/MotifUI/MotifThread.C libUI/MotifUI/Dialog.h              \
22         libUI/MotifUI/MotifThread.h libUI/MotifUI/DtDND.C               \
23         libUI/MotifUI/MotifUI.C libUI/MotifUI/DtDND.h                   \
24         libUI/MotifUI/MotifUI.h libUI/MotifUI/Group.C                   \
25         libUI/MotifUI/Prompt.C libUI/MotifUI/Group.h                    \
26         libUI/MotifUI/Prompt.h libUI/MotifUI/HelpSystem.C               \
27         libUI/MotifUI/ScaleObj.C libUI/MotifUI/HelpSystem.h             \
28         libUI/MotifUI/ScaleObj.h libUI/MotifUI/Icon.h                   \
29         libUI/MotifUI/Sep.C libUI/MotifUI/IconObj.C                     \
30         libUI/MotifUI/Sep.h libUI/MotifUI/IconObj.h                     \
31         libUI/MotifUI/WorkArea.h libUI/MotifUI/IconP.h                  \
32         libUI/MotifUI/WorkAreaP.h libUI/MotifUI/Debug.c                 \
33         libUI/MotifUI/Icon.c libUI/MotifUI/WorkArea.c
34
35 OBJ_SRC = objects/BaseObj.C objects/BaseObj.h                           \
36         objects/PrintObj/ParseJobs.C objects/PrintObj/PrintSubSys.C     \
37         objects/PrintObj/ParseJobs.h objects/PrintObj/PrintSubSys.h     \
38         objects/PrintObj/PrintJob.C objects/PrintObj/Queue.C            \
39         objects/PrintObj/PrintJob.h objects/PrintObj/Queue.h
40
41 UI_SRC = UI/DtActions.C UI/DtFindD.h UI/DtProps.C UI/DtSetModList.h     \
42         UI/DtActions.h UI/DtFindSet.C UI/DtProps.h UI/DtSetPref.C       \
43         UI/DtApp.C UI/DtFindSet.h UI/DtPrtJobIcon.C UI/DtSetPref.h      \
44         UI/DtApp.h UI/DtMainW.C UI/DtPrtJobIcon.h UI/DtWorkArea.C       \
45         UI/DtDetailsLabel.C UI/DtMainW.h UI/DtPrtProps.C                \
46         UI/DtWorkArea.h UI/DtDetailsLabel.h UI/DtPrinterIcon.C          \
47         UI/DtPrtProps.h UI/DtFindD.C UI/DtPrinterIcon.h                 \
48         UI/DtSetModList.C
49
50
51 dtprintinfo_SOURCES = $(UTIL_SRC) $(LIBUI_SRC) $(OBJ_SRC) $(UI_SRC)     \
52         DtPrintinfo.C dtprintinfomsg.h
53
54 if SOLARIS
55 dtprintinfo_LDADD += -ldl
56 endif
57
58 # special processing for message files
59 SYM2NUM_CMD = CPP=$(GENCPP) $(KSH) sym2num
60
61 BUILT_SOURCES = dtprintinfo_cat.h dtprintinfo_msg.h dtprintinfo.msg
62 CLEANFILES = $(BUILT_SOURCES)
63
64 # we set this up as an empty target to please make.  The commands for
65 # the dtprintinfo.msg target will generate it.  We do it this way so
66 # that this module can be built in parallel without causing corruption
67 # in the dtprintinfo_msg.h file.  Otherwise an attempt to call
68 # SYM2NUM_CMD twice will occur during multi-core builds if it is
69 # listed as the second target depending on dtprintinfo.msg.src along
70 # with dtprintinfo.msg.
71 dtprintinfo_msg.h:
72
73 dtprintinfo.msg: dtprintinfo.msg.src
74         $(RM) dtprintinfo_msg.h dtprintinfo.msg
75         $(SYM2NUM_CMD) dtprintinfo dtprintinfo.msg.src > dtprintinfo.msg
76
77 dtprintinfo_cat.h: dtprintinfo.msg.src
78         $(RM) dtprintinfo_cat.h
79         $(AWK) -f msg.awk dtprintinfo.msg.src > dtprintinfo_cat.h
80