]>
Commit | Line | Data |
---|---|---|
c57452c8 | 1 | # Makefile for Cygwin server |
600afd99 | 2 | # Copyright 2003, 2006, 2007, 2008, 2009, 2014 Red Hat, Inc. |
c57452c8 CF |
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 | ||
c57452c8 | 10 | srcdir:=@srcdir@ |
4c36016b CF |
11 | target_builddir:=@target_builddir@ |
12 | winsup_srcdir:=@winsup_srcdir@ | |
13 | configure_args=@configure_args@ | |
14 | ||
15 | export CC:=@CC@ | |
16 | export CXX:=@CXX@ | |
17 | ||
065b05f2 CF |
18 | CFLAGS:=@CFLAGS@ |
19 | override CXXFLAGS=@CXXFLAGS@ | |
20 | override CXXFLAGS+=-MMD -D__OUTSIDE_CYGWIN__ -DSYSCONFDIR="\"$(sysconfdir)\"" | |
21 | ||
4c36016b CF |
22 | include ${srcdir}/../Makefile.common |
23 | ||
24 | cygwin_build:=${target_builddir}/winsup/cygwin | |
25 | ||
26 | # environment variables used by ccwrap | |
27 | export CCWRAP_HEADERS:=$(dir ${srcdir})/cygwin ${cygwin_build} | |
28 | export CCWRAP_SYSTEM_HEADERS:=@cygwin_headers@ @newlib_headers@ | |
29 | export CCWRAP_DIRAFTER_HEADERS:=@windows_headers@ | |
c57452c8 | 30 | |
029d147e CF |
31 | DESTDIR= |
32 | prefix:=${DESTDIR}@prefix@ | |
33 | exec_prefix:=${DESTDIR}@exec_prefix@ | |
34 | bindir:=${DESTDIR}@bindir@ | |
35 | sbindir:=${DESTDIR}@sbindir@ | |
36 | sysconfdir:=${DESTDIR}@sysconfdir@ | |
c57452c8 CF |
37 | program_transform_name:=@program_transform_name@ |
38 | ||
39 | INSTALL:=@INSTALL@ | |
40 | INSTALL_PROGRAM:=@INSTALL_PROGRAM@ | |
41 | INSTALL_DATA:=@INSTALL_DATA@ | |
42 | ||
29c1c508 | 43 | AR:=@AR@ |
c57452c8 | 44 | |
c57452c8 | 45 | |
a245bd6e | 46 | OBJS:= cygserver.o client.o process.o msg.o sem.o shm.o threaded_queue.o \ |
de165669 | 47 | transport.o transport_pipes.o \ |
282113ba | 48 | bsd_helper.o bsd_log.o bsd_mutex.o \ |
600afd99 | 49 | sysv_msg.o sysv_sem.o sysv_shm.o setpwd.o pwdgrp.o |
29c1c508 | 50 | LIBOBJS:=${patsubst %.o,lib%.o,$(OBJS)} |
c57452c8 | 51 | |
fb7331e3 | 52 | CYGWIN_OBJS:=$(cygwin_build)/version.o |
c57452c8 | 53 | |
a2acbfb1 CV |
54 | CYGWIN_LIB:=$(cygwin_build)/libcygwin.a |
55 | ||
56797078 | 56 | all: cygserver.exe |
c57452c8 | 57 | |
2e488e95 CF |
58 | install: all cygserver.conf cygserver-config README |
59 | /bin/mkdir -p $(DESTDIR)$(sbindir) $(DESTDIR)$(bindir) $(DESTDIR)$(sysconfdir)/defaults/etc $(DESTDIR)$(prefix)/share/doc/Cygwin | |
99fe2b78 CF |
60 | $(INSTALL_PROGRAM) cygserver.exe $(DESTDIR)$(sbindir)/cygserver.exe |
61 | $(INSTALL_PROGRAM) $(srcdir)/cygserver-config $(DESTDIR)$(bindir)/cygserver-config | |
62 | $(INSTALL_DATA) $(srcdir)/cygserver.conf $(DESTDIR)$(sysconfdir)/defaults/etc/cygserver.conf | |
63 | $(INSTALL_DATA) $(srcdir)/README $(DESTDIR)$(prefix)/share/doc/Cygwin/cygserver.README | |
c57452c8 | 64 | |
4d8d80b8 | 65 | clean: |
282113ba CV |
66 | rm -f $(OBJS) ${patsubst %.o,%.d,$(OBJS)} cygserver.exe |
67 | ||
68 | libclean: | |
69 | rm -f $(LIBOBJS) ${patsubst %.o,%.d,$(LIBOBJS)} libcygserver.a | |
70 | ||
71 | fullclean: clean libclean | |
4d8d80b8 | 72 | |
fb7331e3 | 73 | cygserver.exe: $(CYGWIN_LIB) $(OBJS) $(CYGWIN_OBJS) |
61522196 | 74 | $(CXX) -o $@ ${wordlist 2,999,$^} -static -static-libgcc -B$(cygwin_build) -lntdll |
4d8d80b8 CF |
75 | |
76 | $(cygwin_build)/%.o: $(cygwin_source)/%.cc | |
77 | @$(MAKE) -C $(@D) $(@F) | |
78 | ||
79 | $(cygwin_build)/%.o: $(cygwin_source)/%.c | |
80 | @$(MAKE) -C $(@D) $(@F) | |
81 | ||
82 | Makefile: Makefile.in configure | |
4c36016b | 83 | ./config.status |
29c1c508 CF |
84 | |
85 | lib%.o: %.cc | |
4c36016b | 86 | ${filter-out -D__OUTSIDE_CYGWIN__, $(COMPILE.cc)} -c -o $(@D)/${basename $(@F)}.o $< |
29c1c508 CF |
87 | |
88 | libcygserver.a: $(LIBOBJS) | |
89 | $(AR) crus $@ $? | |
282113ba CV |
90 | |
91 | deps:=${wildcard *.d} | |
92 | ifneq (,$(deps)) | |
93 | include $(deps) | |
94 | endif |