# Makefile for Cygwin server

# 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.

srcdir:=/usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup/cygserver
target_builddir:=/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin
winsup_srcdir:=/usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup
configure_args='--disable-option-checking' '--prefix=/usr' '--with-newlib' '--enable-multilib' '--sysconfdir=/etc' '--sharedstatedir=/var' '--localstatedir=/var' '--program-transform-name=s,y,y,' '--with-target-subdir=x86_64-pc-cygwin' '--build=x86_64-pc-linux-gnu' '--host=x86_64-pc-cygwin' '--target=x86_64-pc-cygwin' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-cygwin' 'target_alias=x86_64-pc-cygwin' 'CC=x86_64-pc-cygwin-cc -L/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/winsup/cygwin -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup/cygwin/include -B/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/ -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/targ-include -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/newlib/libc/include ' 'CFLAGS=-g -O2 ' 'LDFLAGS=' 'CPPFLAGS=' 'CXX=x86_64-pc-cygwin-c++ -L/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/winsup/cygwin -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup/cygwin/include -B/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/ -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/targ-include -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/newlib/libc/include ' 'CXXFLAGS=-g -O2 ' '--cache-file=.././config.cache'

export CC:=x86_64-pc-cygwin-cc -L/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/winsup/cygwin -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup/cygwin/include -B/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/ -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/targ-include -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/newlib/libc/include   
export CXX:=x86_64-pc-cygwin-c++ -L/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/winsup/cygwin -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup/cygwin/include -B/usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/ -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/targ-include -isystem /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/newlib/libc/include   

CFLAGS:=-g -O2 
override CXXFLAGS=-g -O2 
override CXXFLAGS+=-MMD -D__OUTSIDE_CYGWIN__ -DSYSCONFDIR="\"$(sysconfdir)\""

include ${srcdir}/../Makefile.common

cygwin_build:=${target_builddir}/winsup/cygwin

# environment variables used by ccwrap
export CCWRAP_HEADERS:=$(dir ${srcdir})/cygwin ${cygwin_build}
export CCWRAP_SYSTEM_HEADERS:=/usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/winsup/cygwin/include /usr/src/testing/newlib-cygwin-2.11.1-1/build/x86_64-pc-cygwin/newlib/targ-include /usr/src/testing/newlib-cygwin-2.11.1-1/newlib-cygwin-2.11.1/newlib/libc/include
export CCWRAP_DIRAFTER_HEADERS:=/home/cygsimple/opt/usr/x86_64-pc-cygwin/include/w32api

DESTDIR=
prefix:=${DESTDIR}/usr
exec_prefix:=${DESTDIR}${prefix}
bindir:=${DESTDIR}${exec_prefix}/bin
sbindir:=${DESTDIR}${exec_prefix}/sbin
sysconfdir:=${DESTDIR}/etc
program_transform_name:=s,y,y,

INSTALL:=/usr/bin/install -c
INSTALL_PROGRAM:=/usr/bin/install -c
INSTALL_DATA:=/usr/bin/install -c -m 644

AR:=/home/cygsimple/opt/usr/bin/../lib/gcc/x86_64-pc-cygwin/7.3.0/../../../../x86_64-pc-cygwin/bin/ar


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 pwdgrp.o
LIBOBJS:=${patsubst %.o,lib%.o,$(OBJS)}

CYGWIN_OBJS:=$(cygwin_build)/version.o

CYGWIN_LIB:=$(cygwin_build)/libcygwin.a

all: cygserver.exe

install: all cygserver.conf cygserver-config README
	/bin/mkdir -p $(DESTDIR)$(sbindir) $(DESTDIR)$(bindir) $(DESTDIR)$(sysconfdir)/defaults/etc $(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 -B$(cygwin_build) -lntdll

$(cygwin_build)/%.o:
	$(MAKE) -C $(@D) $(@F)

Makefile: Makefile.in configure
	./config.status

lib%.o: %.cc
	${filter-out -D__OUTSIDE_CYGWIN__, $(COMPILE.cc)} -c -o $(@D)/${basename $(@F)}.o $<

libcygserver.a: $(LIBOBJS)
	$(AR) crus $@ $?

deps:=${wildcard *.d}
ifneq (,$(deps))
include $(deps)
endif
