134 lines
4.5 KiB
Text
134 lines
4.5 KiB
Text
#
|
|
# Copyright (c) 2007-2015, Cameron Rich
|
|
#
|
|
# All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions are met:
|
|
#
|
|
# * Redistributions of source code must retain the above copyright notice,
|
|
# this list of conditions and the following disclaimer.
|
|
# * Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution.
|
|
# * Neither the name of the axTLS project nor the names of its
|
|
# contributors may be used to endorse or promote products derived
|
|
# from this software without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
|
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
|
# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
|
# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
#
|
|
|
|
#
|
|
# A standard makefile for all makefiles
|
|
#
|
|
|
|
# All executables and libraries go here
|
|
STAGE=./_stage
|
|
|
|
ifneq ($(MAKECMDGOALS), clean)
|
|
|
|
# Give an initial rule
|
|
all:
|
|
|
|
# Win32
|
|
ifdef CONFIG_PLATFORM_WIN32
|
|
|
|
ifdef CONFIG_VISUAL_STUDIO_7_0
|
|
CONFIG_VISUAL_STUDIO_7_0_BASE_UNIX:=$(shell cygpath -u $(CONFIG_VISUAL_STUDIO_7_0_BASE))
|
|
export INCLUDE=$(shell echo "$(CONFIG_VISUAL_STUDIO_7_0_BASE)\vc7\include;$(CONFIG_VISUAL_STUDIO_7_0_BASE)\vc7\platformsdk\include")
|
|
export LIB=$(shell echo "$(CONFIG_VISUAL_STUDIO_7_0_BASE)\vc7\\platformsdk\lib;$(CONFIG_VISUAL_STUDIO_7_0_BASE)\vc7\lib")
|
|
PATH:=$(CONFIG_VISUAL_STUDIO_7_0_BASE_UNIX)/vc7/bin:$(CONFIG_VISUAL_STUDIO_7_0_BASE_UNIX)/common7/ide:$(PATH)
|
|
endif
|
|
ifdef CONFIG_VISUAL_STUDIO_8_0
|
|
CONFIG_VISUAL_STUDIO_8_0_BASE_UNIX:=$(shell cygpath -u $(CONFIG_VISUAL_STUDIO_8_0_BASE))
|
|
export INCLUDE=$(shell echo "$(CONFIG_VISUAL_STUDIO_8_0_BASE)\vc\include;$(CONFIG_VISUAL_STUDIO_8_0_BASE)\vc\platformsdk\include")
|
|
export LIB=$(shell echo "$(CONFIG_VISUAL_STUDIO_8_0_BASE)\vc\platformsdk\lib;$(CONFIG_VISUAL_STUDIO_8_0_BASE)\vc\lib")
|
|
PATH:=$(CONFIG_VISUAL_STUDIO_8_0_BASE_UNIX)/vc/bin:$(CONFIG_VISUAL_STUDIO_8_0_BASE_UNIX)/common7/ide:$(PATH)
|
|
endif
|
|
ifdef CONFIG_VISUAL_STUDIO_10_0
|
|
CONFIG_VISUAL_STUDIO_10_0_BASE_UNIX:=$(shell cygpath -u $(CONFIG_VISUAL_STUDIO_10_0_BASE))
|
|
export INCLUDE=$(shell echo "$(CONFIG_VISUAL_STUDIO_10_0_BASE)\vc\include;$(CONFIG_VISUAL_STUDIO_10_0_BASE)\..\Microsoft SDKs\Windows\v7.0A\include")
|
|
export LIB=$(shell echo "$(CONFIG_VISUAL_STUDIO_10_0_BASE)\vc\lib;$(CONFIG_VISUAL_STUDIO_10_0_BASE)\..\Microsoft SDKs\Windows\v7.0A\lib")
|
|
PATH:=$(CONFIG_VISUAL_STUDIO_10_0_BASE_UNIX)/vc/bin:$(CONFIG_VISUAL_STUDIO_10_0_BASE_UNIX)/common7/ide:$(PATH)
|
|
stuff:
|
|
@echo $(INCLUDE)
|
|
endif
|
|
|
|
CC=cl.exe
|
|
LD=link.exe
|
|
AXTLS_INCLUDE=$(shell cygpath -w $(AXTLS_HOME))
|
|
CFLAGS+=/nologo /W3 /D"WIN32" /D"_MBCS" /D"_CONSOLE" /D"_CRT_SECURE_NO_DEPRECATE" /FD /I"$(AXTLS_INCLUDE)crypto" /I"$(AXTLS_INCLUDE)ssl" /I"$(AXTLS_INCLUDE)config" /c
|
|
LDFLAGS=/nologo /subsystem:console /machine:I386
|
|
LDSHARED = /dll
|
|
AR=lib /nologo
|
|
|
|
ifdef CONFIG_DEBUG
|
|
CFLAGS += /Gm /Zi /Od /D "_DEBUG"
|
|
LDFLAGS += /debug /incremental:yes
|
|
else
|
|
CFLAGS += /O2 /D "NDEBUG"
|
|
LDFLAGS += /incremental:no
|
|
endif
|
|
|
|
else # Not Win32
|
|
|
|
-include .depend
|
|
|
|
CFLAGS += -I$(AXTLS_HOME)/config -I$(AXTLS_HOME)/ssl -I$(AXTLS_HOME)/crypto
|
|
LD=$(CC)
|
|
STRIP=$(CROSS)strip
|
|
|
|
# Solaris
|
|
ifdef CONFIG_PLATFORM_SOLARIS
|
|
CFLAGS += -DCONFIG_PLATFORM_SOLARIS
|
|
LDFLAGS += -lsocket -lnsl -lc
|
|
LDSHARED = -G
|
|
# Linux/Cygwin
|
|
else
|
|
CFLAGS += -Wall -Wstrict-prototypes -Wshadow
|
|
LDSHARED = -shared
|
|
|
|
# Linux
|
|
ifndef CONFIG_PLATFORM_CYGWIN
|
|
ifndef CONFIG_PLATFORM_NOMMU
|
|
CFLAGS += -fPIC
|
|
|
|
# Cygwin
|
|
else
|
|
CFLAGS += -DCONFIG_PLATFORM_CYGWIN
|
|
LDFLAGS += -enable-auto-import
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
ifdef CONFIG_DEBUG
|
|
CFLAGS += -g
|
|
else
|
|
LDFLAGS += -s
|
|
ifdef CONFIG_PLATFORM_SOLARIS
|
|
CFLAGS += -O
|
|
else
|
|
CFLAGS += -O3
|
|
endif
|
|
|
|
endif # CONFIG_DEBUG
|
|
endif # WIN32
|
|
|
|
CFLAGS+=$(subst ",, $(strip $(CONFIG_EXTRA_CFLAGS_OPTIONS)))
|
|
LDFLAGS+=$(subst ",, $(strip $(CONFIG_EXTRA_LDFLAGS_OPTIONS)))
|
|
|
|
endif # not 'clean'
|
|
|
|
clean::
|
|
-@rm -f *.o *.obj core* *.out *~ \.depend vc*0*
|
|
|