1 GTK_FLAGS=`pkg-config gtk+-2.0 --cflags`
2 GTK_LIBS=`pkg-config gtk+-2.0 --libs`
6 LIBS=@LIBS@ -lnetapi -ltdb -ltalloc
7 DEVELOPER_CFLAGS=@DEVELOPER_CFLAGS@
8 CCFLAGS=-I../ -L../../../bin @CFLAGS@ $(GTK_FLAGS)
11 LDFLAGS=@PIE_LDFLAGS@ @LDFLAGS@
13 NETAPI_LIBS=$(LIBS) $(KRB5LIBS) $(LDAP_LIBS)
14 CMDLINE_LIBS=$(NETAPI_LIBS) @POPTLIBS@
16 # Compile a source file.
17 COMPILE_CC = $(CC) -I. $(CCFLAGS) $(PICFLAG) -c $< -o $@
18 COMPILE = $(COMPILE_CC)
20 PROGS = bin/getdc@EXEEXT@ \
22 bin/netdomjoin@EXEEXT@ \
23 bin/netdomjoin-gui@EXEEXT@ \
24 bin/getjoinableous@EXEEXT@ \
25 bin/getjoininformation@EXEEXT@ \
26 bin/rename_machine@EXEEXT@ \
27 bin/user_add@EXEEXT@ \
28 bin/user_del@EXEEXT@ \
29 bin/user_enum@EXEEXT@ \
30 bin/user_dispinfo@EXEEXT@ \
31 bin/user_chgpwd@EXEEXT@ \
32 bin/user_getinfo@EXEEXT@ \
33 bin/user_setinfo@EXEEXT@ \
34 bin/user_modalsget@EXEEXT@ \
35 bin/user_modalsset@EXEEXT@ \
36 bin/user_getgroups@EXEEXT@ \
37 bin/user_setgroups@EXEEXT@ \
38 bin/user_getlocalgroups@EXEEXT@ \
39 bin/group_add@EXEEXT@ \
40 bin/group_del@EXEEXT@ \
41 bin/group_enum@EXEEXT@ \
42 bin/group_setinfo@EXEEXT@ \
43 bin/group_getinfo@EXEEXT@ \
44 bin/group_adduser@EXEEXT@ \
45 bin/group_deluser@EXEEXT@ \
46 bin/group_getusers@EXEEXT@ \
47 bin/group_setusers@EXEEXT@ \
48 bin/localgroup_add@EXEEXT@ \
49 bin/localgroup_del@EXEEXT@ \
50 bin/localgroup_getinfo@EXEEXT@ \
51 bin/localgroup_setinfo@EXEEXT@ \
52 bin/localgroup_enum@EXEEXT@ \
53 bin/localgroup_addmembers@EXEEXT@ \
54 bin/localgroup_delmembers@EXEEXT@ \
55 bin/localgroup_setmembers@EXEEXT@ \
56 bin/localgroup_getmembers@EXEEXT@ \
57 bin/remote_tod@EXEEXT@ \
58 bin/server_getinfo@EXEEXT@ \
59 bin/share_add@EXEEXT@ \
60 bin/share_del@EXEEXT@ \
61 bin/share_enum@EXEEXT@ \
62 bin/share_getinfo@EXEEXT@ \
63 bin/share_setinfo@EXEEXT@ \
64 bin/file_close@EXEEXT@ \
65 bin/file_getinfo@EXEEXT@ \
66 bin/file_enum@EXEEXT@ \
67 bin/shutdown_init@EXEEXT@ \
68 bin/shutdown_abort@EXEEXT@
72 MAKEDIR = || exec false; \
73 if test -d "$$dir"; then :; else \
75 mkdir -p "$$dir" >/dev/null 2>&1 || \
78 exec false; fi || exec false
80 BINARY_PREREQS = bin/.dummy
83 @if (: >> $@ || : > $@) >/dev/null 2>&1; then :; else \
84 dir=bin $(MAKEDIR); fi
85 @: >> $@ || : > $@ # what a fancy emoticon!
88 @if (: >> $@ || : > $@) >/dev/null 2>&1; then rm -f $@; else \
89 dir=`echo $@ | sed 's,/[^/]*$$,,;s,^$$,.,'` $(MAKEDIR); fi
91 @$(COMPILE) && exit 0;\
92 echo "The following command failed:" 1>&2;\
93 echo "$(COMPILE_CC)" 1>&2;\
94 $(COMPILE_CC) >/dev/null 2>&1
96 CMDLINE_OBJ = common.o
97 GETDC_OBJ = getdc/getdc.o $(CMDLINE_OBJ)
98 DSGETDC_OBJ = dsgetdc/dsgetdc.o $(CMDLINE_OBJ)
99 NETDOMJOIN_OBJ = join/netdomjoin.o $(CMDLINE_OBJ)
100 NETDOMJOIN_GUI_OBJ = netdomjoin-gui/netdomjoin-gui.o
101 GETJOINABLEOUS_OBJ = join/getjoinableous.o $(CMDLINE_OBJ)
102 GETJOININFORMATION_OBJ = join/getjoininformation.o $(CMDLINE_OBJ)
103 RENAMEMACHINE_OBJ = join/rename_machine.o $(CMDLINE_OBJ)
104 USERADD_OBJ = user/user_add.o $(CMDLINE_OBJ)
105 USERDEL_OBJ = user/user_del.o $(CMDLINE_OBJ)
106 USERENUM_OBJ = user/user_enum.o $(CMDLINE_OBJ)
107 USERDISPINFO_OBJ = user/user_dispinfo.o $(CMDLINE_OBJ)
108 USERCHGPWD_OBJ = user/user_chgpwd.o $(CMDLINE_OBJ)
109 USERGETINFO_OBJ = user/user_getinfo.o $(CMDLINE_OBJ)
110 USERSETINFO_OBJ = user/user_setinfo.o $(CMDLINE_OBJ)
111 USERMODALSGET_OBJ = user/user_modalsget.o $(CMDLINE_OBJ)
112 USERMODALSSET_OBJ = user/user_modalsset.o $(CMDLINE_OBJ)
113 USERGETGROUPS_OBJ = user/user_getgroups.o $(CMDLINE_OBJ)
114 USERSETGROUPS_OBJ = user/user_setgroups.o $(CMDLINE_OBJ)
115 USERGETLOCALGROUPS_OBJ = user/user_getlocalgroups.o $(CMDLINE_OBJ)
116 GROUPADD_OBJ = group/group_add.o $(CMDLINE_OBJ)
117 GROUPDEL_OBJ = group/group_del.o $(CMDLINE_OBJ)
118 GROUPENUM_OBJ = group/group_enum.o $(CMDLINE_OBJ)
119 GROUPSETINFO_OBJ = group/group_setinfo.o $(CMDLINE_OBJ)
120 GROUPGETINFO_OBJ = group/group_getinfo.o $(CMDLINE_OBJ)
121 GROUPADDUSER_OBJ = group/group_adduser.o $(CMDLINE_OBJ)
122 GROUPDELUSER_OBJ = group/group_deluser.o $(CMDLINE_OBJ)
123 GROUPGETUSERS_OBJ = group/group_getusers.o $(CMDLINE_OBJ)
124 GROUPSETUSERS_OBJ = group/group_setusers.o $(CMDLINE_OBJ)
125 LOCALGROUPADD_OBJ = localgroup/localgroup_add.o $(CMDLINE_OBJ)
126 LOCALGROUPDEL_OBJ = localgroup/localgroup_del.o $(CMDLINE_OBJ)
127 LOCALGROUPGETINFO_OBJ = localgroup/localgroup_getinfo.o $(CMDLINE_OBJ)
128 LOCALGROUPSETINFO_OBJ = localgroup/localgroup_setinfo.o $(CMDLINE_OBJ)
129 LOCALGROUPENUM_OBJ = localgroup/localgroup_enum.o $(CMDLINE_OBJ)
130 LOCALGROUPADDMEMBERS_OBJ = localgroup/localgroup_addmembers.o $(CMDLINE_OBJ)
131 LOCALGROUPDELMEMBERS_OBJ = localgroup/localgroup_delmembers.o $(CMDLINE_OBJ)
132 LOCALGROUPSETMEMBERS_OBJ = localgroup/localgroup_setmembers.o $(CMDLINE_OBJ)
133 LOCALGROUPGETMEMBERS_OBJ = localgroup/localgroup_getmembers.o $(CMDLINE_OBJ)
134 REMOTETOD_OBJ = server/remote_tod.o $(CMDLINE_OBJ)
135 SERVERGETINFO_OBJ = server/server_getinfo.o $(CMDLINE_OBJ)
136 SHAREADD_OBJ = share/share_add.o $(CMDLINE_OBJ)
137 SHAREDEL_OBJ = share/share_del.o $(CMDLINE_OBJ)
138 SHAREENUM_OBJ = share/share_enum.o $(CMDLINE_OBJ)
139 SHAREGETINFO_OBJ = share/share_getinfo.o $(CMDLINE_OBJ)
140 SHARESETINFO_OBJ = share/share_setinfo.o $(CMDLINE_OBJ)
141 FILECLOSE_OBJ = file/file_close.o $(CMDLINE_OBJ)
142 FILEGETINFO_OBJ = file/file_getinfo.o $(CMDLINE_OBJ)
143 FILEENUM_OBJ = file/file_enum.o $(CMDLINE_OBJ)
144 SHUTDOWNINIT_OBJ = shutdown/shutdown_init.o $(CMDLINE_OBJ)
145 SHUTDOWNABORT_OBJ = shutdown/shutdown_abort.o $(CMDLINE_OBJ)
147 bin/getdc@EXEEXT@: $(BINARY_PREREQS) $(GETDC_OBJ)
149 @$(CC) $(CCFLAGS) -o $@ $(GETDC_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
151 bin/dsgetdc@EXEEXT@: $(BINARY_PREREQS) $(DSGETDC_OBJ)
153 @$(CC) $(CCFLAGS) -o $@ $(DSGETDC_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
155 bin/getjoinableous@EXEEXT@: $(BINARY_PREREQS) $(GETJOINABLEOUS_OBJ)
157 @$(CC) $(CCFLAGS) -o $@ $(GETJOINABLEOUS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
159 bin/getjoininformation@EXEEXT@: $(BINARY_PREREQS) $(GETJOININFORMATION_OBJ)
161 @$(CC) $(CCFLAGS) -o $@ $(GETJOININFORMATION_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
163 bin/rename_machine@EXEEXT@: $(BINARY_PREREQS) $(RENAMEMACHINE_OBJ)
165 @$(CC) $(CCFLAGS) -o $@ $(RENAMEMACHINE_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
167 bin/netdomjoin@EXEEXT@: $(BINARY_PREREQS) $(NETDOMJOIN_OBJ)
169 @$(CC) $(CCFLAGS) -o $@ $(NETDOMJOIN_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
171 bin/netdomjoin-gui@EXEEXT@: $(BINARY_PREREQS) $(NETDOMJOIN_GUI_OBJ)
173 @$(CC) $(CCFLAGS) $(GTK_FLAGS) -o $@ $(NETDOMJOIN_GUI_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(GTK_LIBS)
175 bin/user_add@EXEEXT@: $(BINARY_PREREQS) $(USERADD_OBJ)
177 @$(CC) $(CCFLAGS) -o $@ $(USERADD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
179 bin/user_del@EXEEXT@: $(BINARY_PREREQS) $(USERDEL_OBJ)
181 @$(CC) $(CCFLAGS) -o $@ $(USERDEL_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
183 bin/user_enum@EXEEXT@: $(BINARY_PREREQS) $(USERENUM_OBJ)
185 @$(CC) $(CCFLAGS) -o $@ $(USERENUM_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
187 bin/user_dispinfo@EXEEXT@: $(BINARY_PREREQS) $(USERDISPINFO_OBJ)
189 @$(CC) $(CCFLAGS) -o $@ $(USERDISPINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
191 bin/user_chgpwd@EXEEXT@: $(BINARY_PREREQS) $(USERCHGPWD_OBJ)
193 @$(CC) $(CCFLAGS) -o $@ $(USERCHGPWD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
195 bin/user_getinfo@EXEEXT@: $(BINARY_PREREQS) $(USERGETINFO_OBJ)
197 @$(CC) $(CCFLAGS) -o $@ $(USERGETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
199 bin/user_setinfo@EXEEXT@: $(BINARY_PREREQS) $(USERSETINFO_OBJ)
201 @$(CC) $(CCFLAGS) -o $@ $(USERSETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
203 bin/user_modalsget@EXEEXT@: $(BINARY_PREREQS) $(USERMODALSGET_OBJ)
205 @$(CC) $(CCFLAGS) -o $@ $(USERMODALSGET_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
207 bin/user_modalsset@EXEEXT@: $(BINARY_PREREQS) $(USERMODALSSET_OBJ)
209 @$(CC) $(CCFLAGS) -o $@ $(USERMODALSSET_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
211 bin/user_getgroups@EXEEXT@: $(BINARY_PREREQS) $(USERGETGROUPS_OBJ)
213 @$(CC) $(CCFLAGS) -o $@ $(USERGETGROUPS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
215 bin/user_setgroups@EXEEXT@: $(BINARY_PREREQS) $(USERSETGROUPS_OBJ)
217 @$(CC) $(CCFLAGS) -o $@ $(USERSETGROUPS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
219 bin/user_getlocalgroups@EXEEXT@: $(BINARY_PREREQS) $(USERGETLOCALGROUPS_OBJ)
221 @$(CC) $(CCFLAGS) -o $@ $(USERGETLOCALGROUPS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
223 bin/group_add@EXEEXT@: $(BINARY_PREREQS) $(GROUPADD_OBJ)
225 @$(CC) $(CCFLAGS) -o $@ $(GROUPADD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
227 bin/group_del@EXEEXT@: $(BINARY_PREREQS) $(GROUPDEL_OBJ)
229 @$(CC) $(CCFLAGS) -o $@ $(GROUPDEL_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
231 bin/group_enum@EXEEXT@: $(BINARY_PREREQS) $(GROUPENUM_OBJ)
233 @$(CC) $(CCFLAGS) -o $@ $(GROUPENUM_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
235 bin/group_setinfo@EXEEXT@: $(BINARY_PREREQS) $(GROUPSETINFO_OBJ)
237 @$(CC) $(CCFLAGS) -o $@ $(GROUPSETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
239 bin/group_getinfo@EXEEXT@: $(BINARY_PREREQS) $(GROUPGETINFO_OBJ)
241 @$(CC) $(CCFLAGS) -o $@ $(GROUPGETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
243 bin/group_adduser@EXEEXT@: $(BINARY_PREREQS) $(GROUPADDUSER_OBJ)
245 @$(CC) $(CCFLAGS) -o $@ $(GROUPADDUSER_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
247 bin/group_deluser@EXEEXT@: $(BINARY_PREREQS) $(GROUPDELUSER_OBJ)
249 @$(CC) $(CCFLAGS) -o $@ $(GROUPDELUSER_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
251 bin/group_getusers@EXEEXT@: $(BINARY_PREREQS) $(GROUPGETUSERS_OBJ)
253 @$(CC) $(CCFLAGS) -o $@ $(GROUPGETUSERS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
255 bin/group_setusers@EXEEXT@: $(BINARY_PREREQS) $(GROUPSETUSERS_OBJ)
257 @$(CC) $(CCFLAGS) -o $@ $(GROUPSETUSERS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
259 bin/localgroup_add@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPADD_OBJ)
261 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPADD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
263 bin/localgroup_del@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPDEL_OBJ)
265 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPDEL_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
267 bin/localgroup_getinfo@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPGETINFO_OBJ)
269 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPGETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
271 bin/localgroup_setinfo@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPSETINFO_OBJ)
273 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPSETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
275 bin/localgroup_enum@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPENUM_OBJ)
277 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPENUM_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
279 bin/localgroup_addmembers@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPADDMEMBERS_OBJ)
281 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPADDMEMBERS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
283 bin/localgroup_delmembers@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPDELMEMBERS_OBJ)
285 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPDELMEMBERS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
287 bin/localgroup_setmembers@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPSETMEMBERS_OBJ)
289 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPSETMEMBERS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
291 bin/localgroup_getmembers@EXEEXT@: $(BINARY_PREREQS) $(LOCALGROUPGETMEMBERS_OBJ)
293 @$(CC) $(CCFLAGS) -o $@ $(LOCALGROUPGETMEMBERS_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
295 bin/remote_tod@EXEEXT@: $(BINARY_PREREQS) $(REMOTETOD_OBJ)
297 @$(CC) $(CCFLAGS) -o $@ $(REMOTETOD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
299 bin/server_getinfo@EXEEXT@: $(BINARY_PREREQS) $(SERVERGETINFO_OBJ)
301 @$(CC) $(CCFLAGS) -o $@ $(SERVERGETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
303 bin/share_add@EXEEXT@: $(BINARY_PREREQS) $(SHAREADD_OBJ)
305 @$(CC) $(CCFLAGS) -o $@ $(SHAREADD_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
307 bin/share_del@EXEEXT@: $(BINARY_PREREQS) $(SHAREDEL_OBJ)
309 @$(CC) $(CCFLAGS) -o $@ $(SHAREDEL_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
311 bin/share_enum@EXEEXT@: $(BINARY_PREREQS) $(SHAREENUM_OBJ)
313 @$(CC) $(CCFLAGS) -o $@ $(SHAREENUM_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
315 bin/share_getinfo@EXEEXT@: $(BINARY_PREREQS) $(SHAREGETINFO_OBJ)
317 @$(CC) $(CCFLAGS) -o $@ $(SHAREGETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
319 bin/share_setinfo@EXEEXT@: $(BINARY_PREREQS) $(SHARESETINFO_OBJ)
321 @$(CC) $(CCFLAGS) -o $@ $(SHARESETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
323 bin/file_close@EXEEXT@: $(BINARY_PREREQS) $(FILECLOSE_OBJ)
325 @$(CC) $(CCFLAGS) -o $@ $(FILECLOSE_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
327 bin/file_getinfo@EXEEXT@: $(BINARY_PREREQS) $(FILEGETINFO_OBJ)
329 @$(CC) $(CCFLAGS) -o $@ $(FILEGETINFO_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
331 bin/file_enum@EXEEXT@: $(BINARY_PREREQS) $(FILEENUM_OBJ)
333 @$(CC) $(CCFLAGS) -o $@ $(FILEENUM_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
335 bin/shutdown_init@EXEEXT@: $(BINARY_PREREQS) $(SHUTDOWNINIT_OBJ)
337 @$(CC) $(CCFLAGS) -o $@ $(SHUTDOWNINIT_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
339 bin/shutdown_abort@EXEEXT@: $(BINARY_PREREQS) $(SHUTDOWNABORT_OBJ)
341 @$(CC) $(CCFLAGS) -o $@ $(SHUTDOWNABORT_OBJ) $(LDFLAGS) $(DYNEXP) $(CMDLINE_LIBS)
345 -rm -f core */*~ *~ \
346 */*.o */*/*.o */*/*/*.o