]>
Commit | Line | Data |
---|---|---|
c57452c8 CF |
1 | # Makefile for Cygwin server |
2 | # Copyright 2003 Red Hat, Inc. | |
3 | ||
4 | # This file is part of Cygwin. | |
5 | ||
6 | # This software is a copyrighted work licensed under the terms of the | |
7 | # Cygwin license. Please consult the file "CYGWIN_LICENSE" for | |
8 | # details. | |
9 | ||
10 | SHELL:=@SHELL@ | |
11 | ||
12 | srcdir:=@srcdir@ | |
13 | VPATH:=@srcdir@ | |
14 | prefix:=@prefix@ | |
15 | exec_prefix:=@exec_prefix@ | |
16 | ||
17 | bindir:=@bindir@ | |
282113ba CV |
18 | sbindir:=@sbindir@ |
19 | sysconfdir:=@sysconfdir@ | |
c57452c8 CF |
20 | program_transform_name:=@program_transform_name@ |
21 | ||
22 | INSTALL:=@INSTALL@ | |
23 | INSTALL_PROGRAM:=@INSTALL_PROGRAM@ | |
24 | INSTALL_DATA:=@INSTALL_DATA@ | |
25 | ||
c57452c8 CF |
26 | CC:=@CC@ |
27 | CC_FOR_TARGET:=$(CC) | |
28 | CXX:=@CXX@ | |
29 | CXX_FOR_TARGET:=$(CXX) | |
29c1c508 | 30 | AR:=@AR@ |
c57452c8 | 31 | |
282113ba CV |
32 | include $(srcdir)/../Makefile.common |
33 | ||
91301b85 CF |
34 | CFLAGS:=@CFLAGS@ |
35 | CXXFLAGS:=@CXXFLAGS@ | |
af284c9c | 36 | override CXXFLAGS+=-MMD -DHAVE_DECL_GETOPT=0 -D__OUTSIDE_CYGWIN__ -DSYSCONFDIR="\"$(sysconfdir)\"" |
c57452c8 | 37 | |
282113ba | 38 | .SUFFIXES: .c .cc .a .o .d |
c57452c8 | 39 | |
a245bd6e | 40 | OBJS:= cygserver.o client.o process.o msg.o sem.o shm.o threaded_queue.o \ |
282113ba CV |
41 | transport.o transport_pipes.o transport_sockets.o \ |
42 | bsd_helper.o bsd_log.o bsd_mutex.o \ | |
43 | sysv_msg.o sysv_sem.o sysv_shm.o | |
29c1c508 | 44 | LIBOBJS:=${patsubst %.o,lib%.o,$(OBJS)} |
c57452c8 CF |
45 | |
46 | CYGWIN_OBJS:=$(cygwin_build)/smallprint.o $(cygwin_build)/version.o \ | |
47 | $(cygwin_build)/wincap.o | |
48 | ||
a2acbfb1 CV |
49 | CYGWIN_LIB:=$(cygwin_build)/libcygwin.a |
50 | ||
56797078 | 51 | all: cygserver.exe |
c57452c8 | 52 | |
4bd66285 CV |
53 | install: all $(updir1)/mkinstalldirs cygserver.conf cygserver-config README |
54 | $(updir1)/mkinstalldirs $(sbindir) | |
55 | $(updir1)/mkinstalldirs $(bindir) | |
56 | $(updir1)/mkinstalldirs $(sysconfdir)/defaults/etc | |
57 | $(updir1)/mkinstalldirs $(prefix)/share/doc/Cygwin | |
282113ba | 58 | $(INSTALL_PROGRAM) cygserver.exe $(sbindir)/cygserver.exe |
4bd66285 | 59 | $(INSTALL_PROGRAM) $(srcdir)/cygserver-config $(bindir)/cygserver-config |
72f11cac | 60 | $(INSTALL_DATA) $(srcdir)/cygserver.conf $(sysconfdir)/defaults/etc/cygserver.conf |
4bd66285 | 61 | $(INSTALL_DATA) $(srcdir)/README $(prefix)/share/doc/Cygwin/cygserver.README |
c57452c8 | 62 | |
4d8d80b8 | 63 | clean: |
282113ba CV |
64 | rm -f $(OBJS) ${patsubst %.o,%.d,$(OBJS)} cygserver.exe |
65 | ||
66 | libclean: | |
67 | rm -f $(LIBOBJS) ${patsubst %.o,%.d,$(LIBOBJS)} libcygserver.a | |
68 | ||
69 | fullclean: clean libclean | |
4d8d80b8 | 70 | |
91301b85 CF |
71 | cygserver.exe: $(CYGWIN_LIB) $(OBJS) $(CYGWIN_OBJS) |
72 | $(CXX) -o $@ ${wordlist 2,999,$^} -L$(cygwin_build) | |
4d8d80b8 CF |
73 | |
74 | $(cygwin_build)/%.o: $(cygwin_source)/%.cc | |
75 | @$(MAKE) -C $(@D) $(@F) | |
76 | ||
77 | $(cygwin_build)/%.o: $(cygwin_source)/%.c | |
78 | @$(MAKE) -C $(@D) $(@F) | |
79 | ||
80 | Makefile: Makefile.in configure | |
29c1c508 CF |
81 | |
82 | lib%.o: %.cc | |
83 | ${filter-out -D__OUTSIDE_CYGWIN__, $(COMPILE_CXX)} -I$(updir)/cygwin -o $(@D)/${basename $(@F)}$o $< | |
84 | ||
85 | libcygserver.a: $(LIBOBJS) | |
86 | $(AR) crus $@ $? | |
282113ba CV |
87 | |
88 | deps:=${wildcard *.d} | |
89 | ifneq (,$(deps)) | |
90 | include $(deps) | |
91 | endif |