xref: /relibc/openlibm/Make.inc (revision c41813f64b3574be55c7575dc9d5e89a6d90f547)
1e8bf3685SViral B. Shah# -*- mode: makefile-gmake -*-
2e8bf3685SViral B. Shah
3bcefcc3dSJameson NashOS := $(shell uname)
41f77ae02SMilan Bouchet-Valat# Do not forget to bump SOMINOR when changing VERSION,
5*c41813f6SMilan Bouchet-Valat# and SOMAJOR when breaking ABI in a backward-incompatible way
6da6c9c18SViral B. ShahVERSION = 0.4
71f77ae02SMilan Bouchet-ValatSOMAJOR = 1
81f77ae02SMilan Bouchet-ValatSOMINOR = 0
971d942f7SViral B. ShahDESTDIR =
10bb40f6c7SMilan Bouchet-Valatprefix = /usr/local
11716317b7STony Kelmanbindir = $(prefix)/bin
12bb40f6c7SMilan Bouchet-Valatlibdir = $(prefix)/lib
13b4625783SMilan Bouchet-Valatincludedir = $(prefix)/include
1456811b08SViral B. Shah
1556811b08SViral B. ShahUSEGCC = 1
1656811b08SViral B. ShahUSECLANG = 0
1756811b08SViral B. Shah
1829af332fSViral B. Shahifeq ($(OS), Darwin)
1929af332fSViral B. ShahUSEGCC = 0
2029af332fSViral B. ShahUSECLANG = 1
2129af332fSViral B. Shahendif
2229af332fSViral B. Shah
2329af332fSViral B. ShahAR = ar
2475ba4267SMike Nolta
2556811b08SViral B. Shahifeq ($(USECLANG),1)
2656811b08SViral B. ShahUSEGCC = 0
2756811b08SViral B. ShahCC = clang
283fda504fSJameson NashCFLAGS_add += -fno-builtin
2956811b08SViral B. Shahendif
3056811b08SViral B. Shah
3156811b08SViral B. Shahifeq ($(USEGCC),1)
3256811b08SViral B. ShahCC = gcc
333fda504fSJameson NashCFLAGS_add += -fno-gnu89-inline
3456811b08SViral B. Shahendif
35ccd319c0SViral B. Shah
36bcefcc3dSJameson NashARCH := $(shell $(CC) -dumpmachine | sed "s/\([^-]*\).*$$/\1/")
37f948e55cSJameson Nashifeq ($(ARCH),mingw32)
38f948e55cSJameson Nash$(error "the mingw32 compiler you are using fails the openblas testsuite. please see the Julia README.windows.md document for a replacement")
39f948e55cSJameson Nashendif
40bcefcc3dSJameson Nash
41bcefcc3dSJameson NashCFLAGS_add += -std=c99 -Wall -O3 -I$(OPENLIBM_HOME) -I$(OPENLIBM_HOME)/include -I$(OPENLIBM_HOME)/ld80 -I$(OPENLIBM_HOME)/$(ARCH) -I$(OPENLIBM_HOME)/src -DASSEMBLER -D__BSD_VISIBLE -Wno-implicit-function-declaration
42bcefcc3dSJameson Nash
43f5fb9274SViral B. Shahdefault: all
44f5fb9274SViral B. Shah
45f0862df1SKeno Fischer%.c.o: %.c
463fda504fSJameson Nash	$(CC) $(CPPFLAGS) $(CFLAGS_add) $(CFLAGS) -c $< -o $@
47e8bf3685SViral B. Shah
48f0862df1SKeno Fischer%.S.o: %.S
493fda504fSJameson Nash	$(CC) $(SFLAGS) $(filter -m% -B% -I% -D%,$(CFLAGS_add)) -c $< -o $@
50f0862df1SKeno Fischer
51ccd319c0SViral B. Shah# OS-specific stuff
52307d7361SKeno Fischerifeq ($(ARCH),i386)
53bcefcc3dSJameson Nashoverride ARCH := i387
54307d7361SKeno Fischerendif
55bb082acaSJameson Nashifeq ($(ARCH),i486)
56bb082acaSJameson Nashoverride ARCH := i387
57bb082acaSJameson Nashendif
5809055587SViral B. Shahifeq ($(ARCH),i586)
5909055587SViral B. Shahoverride ARCH := i387
6009055587SViral B. Shahendif
61bb082acaSJameson Nashifeq ($(ARCH),i686)
62bb082acaSJameson Nashoverride ARCH := i387
63bb082acaSJameson Nashendif
64307d7361SKeno Fischer
65307d7361SKeno Fischerifeq ($(ARCH),x86_64)
66bcefcc3dSJameson Nashoverride ARCH := amd64
67307d7361SKeno Fischerendif
680df00dd0SJameson Nash
6913cc5795SJameson Nashifneq (,$(findstring MINGW,$(OS)))
7013cc5795SJameson Nashoverride OS=WINNT
713fda504fSJameson Nashendif
72716317b7STony Kelman
73716317b7STony Kelman#keep these if statements separate
743fda504fSJameson Nashifeq ($(OS), WINNT)
75251814ebSMilan Bouchet-ValatSHLIB_EXT = dll
76251814ebSMilan Bouchet-ValatSONAME_FLAG = -soname
773fda504fSJameson NashCFLAGS_add += -nodefaultlibs
781cc9ad07STony Kelmanshlibdir = $(bindir)
79716317b7STony Kelmanelse
801cc9ad07STony Kelmanshlibdir = $(libdir)
810df00dd0SJameson Nashendif
820df00dd0SJameson Nash
83ccd319c0SViral B. Shahifeq ($(OS), Linux)
84ccd319c0SViral B. ShahSHLIB_EXT = so
85251814ebSMilan Bouchet-ValatSONAME_FLAG = -soname
863fda504fSJameson NashCFLAGS_add+=-fPIC
870df00dd0SJameson Nashendif
880df00dd0SJameson Nash
890df00dd0SJameson Nashifeq ($(OS), FreeBSD)
900df00dd0SJameson NashSHLIB_EXT = so
91251814ebSMilan Bouchet-ValatSONAME_FLAG = -soname
923fda504fSJameson NashCFLAGS_add+=-fPIC
93ccd319c0SViral B. Shahendif
94ccd319c0SViral B. Shah
95ccd319c0SViral B. Shahifeq ($(OS), Darwin)
96ccd319c0SViral B. ShahSHLIB_EXT = dylib
97251814ebSMilan Bouchet-ValatSONAME_FLAG = -install_name
983fda504fSJameson NashCFLAGS_add+=-fPIC
990df00dd0SJameson Nashendif
100