newlib/winsup/cygserver/Makefile.in
Corinna Vinschen 969afaf753 * Makefile.in (cygserver.exe): Link with -static to avoid linking
against cygstdc++-6.dll due to references to __cxa_pure_virtual.
2009-11-16 08:50:07 +00:00

92 lines
2.5 KiB
Makefile

# Makefile for Cygwin server
# Copyright 2003, 2006, 2007, 2008, 2009 Red Hat, Inc.
# This file is part of Cygwin.
# This software is a copyrighted work licensed under the terms of the
# Cygwin license. Please consult the file "CYGWIN_LICENSE" for
# details.
SHELL:=@SHELL@
srcdir:=@srcdir@
VPATH:=@srcdir@
DESTDIR=
prefix:=${DESTDIR}@prefix@
exec_prefix:=${DESTDIR}@exec_prefix@
bindir:=${DESTDIR}@bindir@
sbindir:=${DESTDIR}@sbindir@
sysconfdir:=${DESTDIR}@sysconfdir@
program_transform_name:=@program_transform_name@
INSTALL:=@INSTALL@
INSTALL_PROGRAM:=@INSTALL_PROGRAM@
INSTALL_DATA:=@INSTALL_DATA@
CC:=@CC@
CC_FOR_TARGET:=$(CC)
CXX:=@CXX@
CXX_FOR_TARGET:=$(CXX)
AR:=@AR@
include $(srcdir)/../Makefile.common
CFLAGS:=@CFLAGS@
override CXXFLAGS=@CXXFLAGS@
override CXXFLAGS+=-MMD -DHAVE_DECL_GETOPT=0 -D__OUTSIDE_CYGWIN__ -DSYSCONFDIR="\"$(sysconfdir)\""
.SUFFIXES: .c .cc .a .o .d
OBJS:= cygserver.o client.o process.o msg.o sem.o shm.o threaded_queue.o \
transport.o transport_pipes.o \
bsd_helper.o bsd_log.o bsd_mutex.o \
sysv_msg.o sysv_sem.o sysv_shm.o setpwd.o
LIBOBJS:=${patsubst %.o,lib%.o,$(OBJS)}
CYGWIN_OBJS:=$(cygwin_build)/version.o
CYGWIN_LIB:=$(cygwin_build)/libcygwin.a
all: cygserver.exe
install: all $(updir1)/mkinstalldirs cygserver.conf cygserver-config README
$(updir1)/mkinstalldirs $(DESTDIR)$(sbindir)
$(updir1)/mkinstalldirs $(DESTDIR)$(bindir)
$(updir1)/mkinstalldirs $(DESTDIR)$(sysconfdir)/defaults/etc
$(updir1)/mkinstalldirs $(DESTDIR)$(prefix)/share/doc/Cygwin
$(INSTALL_PROGRAM) cygserver.exe $(DESTDIR)$(sbindir)/cygserver.exe
$(INSTALL_PROGRAM) $(srcdir)/cygserver-config $(DESTDIR)$(bindir)/cygserver-config
$(INSTALL_DATA) $(srcdir)/cygserver.conf $(DESTDIR)$(sysconfdir)/defaults/etc/cygserver.conf
$(INSTALL_DATA) $(srcdir)/README $(DESTDIR)$(prefix)/share/doc/Cygwin/cygserver.README
clean:
rm -f $(OBJS) ${patsubst %.o,%.d,$(OBJS)} cygserver.exe
libclean:
rm -f $(LIBOBJS) ${patsubst %.o,%.d,$(LIBOBJS)} libcygserver.a
fullclean: clean libclean
cygserver.exe: $(CYGWIN_LIB) $(OBJS) $(CYGWIN_OBJS)
$(CXX) -o $@ ${wordlist 2,999,$^} -static -static-libgcc -L$(cygwin_build) -lntdll
$(cygwin_build)/%.o: $(cygwin_source)/%.cc
@$(MAKE) -C $(@D) $(@F)
$(cygwin_build)/%.o: $(cygwin_source)/%.c
@$(MAKE) -C $(@D) $(@F)
Makefile: Makefile.in configure
lib%.o: %.cc
${filter-out -D__OUTSIDE_CYGWIN__, $(COMPILE_CXX)} -c -I$(updir)/cygwin -I$(bupdir)/cygwin -o $(@D)/${basename $(@F)}$o $<
libcygserver.a: $(LIBOBJS)
$(AR) crus $@ $?
deps:=${wildcard *.d}
ifneq (,$(deps))
include $(deps)
endif