File: 0001-Cleaner-Makefiles.patch

package info (click to toggle)
ocamlodbc 2.15-7
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 476 kB
  • sloc: ansic: 842; ml: 779; makefile: 341; sh: 7
file content (89 lines) | stat: -rw-r--r-- 2,880 bytes parent folder | download
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
From: John Goerzen <jgoerzen@complete.org>
Date: Wed, 14 Oct 2020 13:56:08 +0200
Subject: Cleaner Makefiles

---
 Biniki/Makefile    |  9 +++++++--
 Makefile           |  8 ++++----
 master.Makefile.in | 11 ++++++++---
 3 files changed, 19 insertions(+), 9 deletions(-)

diff --git a/Biniki/Makefile b/Biniki/Makefile
index 7847ca0..887f468 100644
--- a/Biniki/Makefile
+++ b/Biniki/Makefile
@@ -13,11 +13,16 @@ CMXFILES =  $(CMOFILES:.cmo=.cmx)
 # Overriden flags
 
 COMPFLAGS=-nolabels -I ../$(SUBDIR) $(INCLUDEGTK)
-LINKFLAGS=-ccopt -L../$(SUBDIR) -I ../$(SUBDIR) $(LINKGTK)
+LINKFLAGS=-ccopt -fPIC -ccopt -L../$(SUBDIR) -I ../$(SUBDIR) $(LINKGTK)
 
 ####
 BINIKI=biniki
-BINIKI_OPT=biniki.opt
+
+ifeq ($(OCAMLOPT),no)
+  BINIKI_OPT=
+else
+  BINIKI_OPT=biniki.opt
+endif
 
 # targets for each database
 mysql:
diff --git a/Makefile b/Makefile
index 79ba194..e8074e0 100644
--- a/Makefile
+++ b/Makefile
@@ -88,7 +88,7 @@ $(LIB_C): $(OBJFILES)
 	$(AR) $@ $(OBJFILES)
 	$(RANLIB) $@
 
-$(LIB): $(OBJOCAML) $(LIBOBJ)
+$(LIB): $(OBJOCAML) $(LIBOBJ) $(LIB_C)
 	$(OCAMLC) -a -linkall -custom -o $@ -cclib -locamlodbc \
 		$(LINKFLAGS) $(OBJOCAML) $(LIBOBJ)
 $(LIB_OPT): $(OBJOCAML_OPT) $(LIBOBJ_OPT) $(LIB_C)
@@ -160,10 +160,10 @@ install:
 	@echo '  To install directly type : "make direct_install"'
 
 direct_install: dummy
-	if test -d $(INSTALL_BINDIR); then : ; else $(MKDIR) $(INSTALL_BINDIR); fi
-	if test -d $(INSTALL_LIBDIR); then : ; else $(MKDIR) $(INSTALL_LIBDIR); fi
+	if test -d $(DESTDIR)/$(INSTALL_BINDIR); then : ; else $(MKDIR) $(DESTDIR)/$(INSTALL_BINDIR); fi
+	if test -d $(DESTDIR)/$(INSTALL_LIBDIR); then : ; else $(MKDIR) $(DESTDIR)/$(INSTALL_LIBDIR); fi
 	for i in mysql postgres db2 unixodbc openingres oraclecfo ; \
-	do (if test -d $$i ; then ($(MKDIR) $(INSTALL_LIBDIR)/$$i ; $(CP) $$i/* $(INSTALL_LIBDIR)/$$i/) fi) ; done
+	do (if test -d $$i ; then ($(MKDIR) $(DESTDIR)/$(INSTALL_LIBDIR)/$$i ; $(CP) $$i/* $(DESTDIR)/$(INSTALL_LIBDIR)/$$i/) fi) ; done
 
 findlib_install: META dummy
 	for i in mysql postgres db2 unixodbc openingres oraclecfo ; do \
diff --git a/master.Makefile.in b/master.Makefile.in
index 134bd1c..ce25bc6 100644
--- a/master.Makefile.in
+++ b/master.Makefile.in
@@ -42,8 +42,13 @@ OCAMLPP=-pp 'grep -v DEBUG'
 MKDIR=mkdir -p
 CP=cp -f
 LIB=ocamlodbc.cma
-LIB_OPT=$(LIB:.cma=.cmxa)
-LIB_A=ocamlodbc.a
+ifeq ($(OCAMLOPT),no)
+  LIB_OPT=
+  LIB_A=
+else
+  LIB_OPT=$(LIB:.cma=.cmxa)
+  LIB_A=ocamlodbc.a
+endif
 LIB_C=libocamlodbc.a
 LIB_CMI=$(LIB:.cma=.cmi)
 INSTALL_LIBDIR=$(OCAMLLIB)/ocamlodbc
@@ -116,7 +121,7 @@ OPTODBC=$($(BASE)_OPTODBC) #-D DEBUG2
 
 # Options for compilation and link
 CC       = gcc
-C_COMPFLAGS= -pthread $(OPTODBC) $(ODBCINCLUDE) -I $(OCAMLLIB)
+C_COMPFLAGS= -fPIC -pthread $(OPTODBC) $(ODBCINCLUDE) -I $(OCAMLLIB)
 
 #MYSQL_C_LINKFLAGS= -L$(ODBCLIB) -L$(ODBCLIB)/mysql
 #POSTGRES_C_LINKFLAGS=-L$(ODBCLIB)