aboutsummaryrefslogtreecommitdiff
path: root/clp-bin/Makefile
blob: 4c1ed7c890c35de19c59046073eb54e0d8ec51ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
CLP_VERSION=1.17.6
COINUTILS_VERSION=2.11.4

CLP_SRCDIR=Clp-releases-$(CLP_VERSION)
COINUTILS_SRCDIR=CoinUtils-releases-$(COINUTILS_VERSION)

OBJDIR=obj
CLP_OBJDIR=$(OBJDIR)/clp
COINUTILS_OBJDIR=$(OBJDIR)/coinutils

INSTALL_DIR=install

BASE=$(PWD)

CLP_PKG_CONFIG=$(BASE)/$(INSTALL_DIR)/lib/pkgconfig:$(PKG_CONFIG_PATH)

.PHONY: all clean clp clp-install coinutils coinutils-install

clean:
	rm -rf $(CLP_OBJDIR)
	rm -rf $(COINUTILS_OBJDIR)
	rm -rf $(INSTALL_DIR)
	
coinutils: $(COINUTILS_OBJDIR)/CoinUtils/src/.libs/libCoinUtils.a

coinutils-install: $(INSTALL_DIR)/lib/libCoinUtils.a

$(COINUTILS_OBJDIR)/Makefile:
	mkdir -p $(OBJDIR)
	mkdir -p $(COINUTILS_OBJDIR)
	cd $(COINUTILS_OBJDIR) && \
	$(BASE)/$(COINUTILS_SRCDIR)/configure \
	    --enable-static \
		--prefix=$(BASE)/$(INSTALL_DIR) \
		--build=x86_64-w64-mingw32 \
		CC=gcc CXX=g++

$(COINUTILS_OBJDIR)/CoinUtils/src/.libs/libCoinUtils.a: $(COINUTILS_OBJDIR)/Makefile
	$(MAKE) -C $(COINUTILS_OBJDIR) all
	
$(INSTALL_DIR)/lib/libCoinUtils.a: $(COINUTILS_OBJDIR)/CoinUtils/src/.libs/libCoinUtils.a
	$(MAKE) -C $(COINUTILS_OBJDIR) install
	
clp: $(CLP_OBJDIR)/Clp/src/.libs/libClp.a

clp-install: $(INSTALL_DIR)/lib/libClp.a

$(CLP_OBJDIR)/Makefile: $(INSTALL_DIR)/lib/libCoinUtils.a
	mkdir -p $(OBJDIR)
	mkdir -p $(CLP_OBJDIR)
	cd $(CLP_OBJDIR) && \
	$(BASE)/$(CLP_SRCDIR)/configure \
	    --enable-static \
		--prefix=$(BASE)/$(INSTALL_DIR) \
		--build=x86_64-w64-mingw32 \
		CC=gcc CXX=g++ PKG_CONFIG_PATH=$(CLP_PKG_CONFIG)

$(CLP_OBJDIR)/Clp/src/.libs/libClp.a: $(CLP_OBJDIR)/Makefile
	$(MAKE) -C $(CLP_OBJDIR) all
	
$(INSTALL_DIR)/lib/libClp.a: $(CLP_OBJDIR)/Clp/src/.libs/libClp.a
	$(MAKE) -C $(CLP_OBJDIR) install

all: $(INSTALL_DIR)/lib/libClp.a $(INSTALL_DIR)/lib/libCoinUtils.a