You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/sci-biology/consed/files/consed-29-fix-build-system....

198 lines
5.5 KiB

Make build system semi-sane:
* Respect CC, CXX, CFLAGS, CXXFLAGS, CPPFLAGS, LDFLAGS and LIBS
* Remove default optimisation flags
* Remove -fpermissive from DEFS (as source builds fine now)
* Add large file support (LFS) via CPPFLAGS and not in Makefile
--- a/makefile
+++ b/makefile
@@ -47,23 +47,20 @@
#
# compilation
#
-CXX= g++
-KRCC= gcc
-CC=gcc
+CXX ?= g++
+CC ?= gcc
#
#
-CFLGS= -w -DINLINE_RWTPTRORDEREDVECTOR -DINLINE_RWTVALORDEREDVECTOR -DINLINE_MBTVALVECTOR -DLINUX_COMPILE -DSOCKLEN_T_DEFINED -D__BOOL_DEFINED -DANSI_C -DOFSTREAM_OPEN_WITHOUT_PERMISSIONS -fpermissive -DNO_POUND_POUND_MACROS -DUSE_USING_IN_PUBLIC_TEMPLATE_CLASSES -DINT_CHAR_OPERATOR -D_FILE_OFFSET_BITS=64 -DSAMTOOLS_AVAILABLE
+DEFS = -DINLINE_RWTPTRORDEREDVECTOR -DINLINE_RWTVALORDEREDVECTOR -DINLINE_MBTVALVECTOR -DLINUX_COMPILE -DSOCKLEN_T_DEFINED -D__BOOL_DEFINED -DANSI_C -DOFSTREAM_OPEN_WITHOUT_PERMISSIONS -DNO_POUND_POUND_MACROS -DUSE_USING_IN_PUBLIC_TEMPLATE_CLASSES -DINT_CHAR_OPERATOR -DSAMTOOLS_AVAILABLE
-OPT= -O
#
# Include directory for template classes must be included
# in both compilation & link lines, even if .h file is
# found in default path. C front, gotta love it.
#
-INC= -I/usr/X11R6/include -I/me1/gordon/samtools/samtools-0.1.18
+INCLUDES = $(SAMTOOLS_CPPFLAGS)
-DEPENDENCIES=
#
#
# Linking
@@ -80,12 +77,9 @@
# /lib/ld-linux.so.2 (0x003ee000)
#
# To fix cut/paste bug, I've made X11 always dynamic.
-CLIBS= -lX11
-LPATH= -L/usr/X11R6/lib
-ARCHIVES= /usr/X11R6/lib/libXm.a \
-/usr/X11R6/lib/libXt.a /usr/X11R6/lib/libSM.a \
-/usr/X11R6/lib/libICE.a /usr/X11R6/lib/libXext.a /usr/X11R6/lib/libXmu.a \
-/usr/X11R6/lib/libXp.a /usr/lib/libm.a /me1/gordon/samtools/samtools-0.1.18/libbam.a /me1/gordon/samtools/samtools-0.1.18/bcftools/libbcf.a /me1/gordon/zlib/zlib-1.2.5/libz.a
+
+MOTIF_LIBS ?= -lXm -lXt
+ALL_LIBS = $(LIBS) $(MOTIF_LIBS) $(X11_LIBS) $(SAMTOOLS_LIBS)
@@ -94,7 +88,6 @@
#
#LDFLGS= -g
# static linking
-LDFLGS= -g -rdynamic
#
# the subdirectory used by cfront compilers gets cleaned
@@ -112,10 +105,10 @@
# general compilation rules for .cpp, .cxx, .c files
#
.cpp.o:
- $(CXX) $(CFLGS) $(OPT) $(INC) -c $<
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(DEFS) -c $<
.c.o:
- $(CXX) $(CFLGS) $(OPT) $(INC) -c $<
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(INCLUDES) $(DEFS) -c $<
#
# targets file included in generated makefile
@@ -593,17 +586,23 @@
writeToRewriteReferenceFile.o \
xsynchronize.o
+SUBDIRS := misc/454 misc/mktrace misc/phd2fasta
+
+all: consed $(SUBDIRS)
+
+$(SUBDIRS):
+ $(MAKE) -C $@
+
+.PHONY: all $(SUBDIRS)
+
consed: $(CONSED_OBJS) makefile checkLicenseKeyStub.o
- $(CXX) $(INC) $(LDFLGS) -o consed $(CONSED_OBJS) checkLicenseKeyStub.o \
- $(ARCHIVES) $(LPATH) $(WARNINGS) $(CLIBS) $(XLIBS)
+ $(CXX) $(LDFLAGS) $(CXXFLAGS) -o consed $(CONSED_OBJS) checkLicenseKeyStub.o $(ALL_LIBS)
trial_consed: $(CONSED_OBJS) makefile checkLicenseKey.o
- $(CXX) $(INC) $(LDFLGS) -o trial_consed $(CONSED_OBJS) checkLicenseKey.o \
- $(ARCHIVES) $(LPATH) $(WARNINGS) $(CLIBS) $(XLIBS)
+ $(CXX) $(LDFLAGS) $(CXXFLAGS) -o trial_consed $(CONSED_OBJS) checkLicenseKey.o $(ALL_LIBS)
pure: $(CONSED_OBJS) makefile checkLicenseKeyStub.o
- $(PURIFY) $(CXX) $(INC) $(LDFLGS) -o consed $(CONSED_OBJS) checkLicenseKeyStub.o \
- $(ARCHIVES) $(LPATH) $(WARNINGS) $(CLIBS) $(XLIBS)
+ $(CXX) $(LDFLAGS) $(CXXFLAGS) -o consed $(CONSED_OBJS) checkLicenseKeyStub.o $(ALL_LIBS)
clean:
rm -rf *.o core $(TEMPLATE_DIR)
@@ -613,15 +612,15 @@
# the Solaris 5.x compiler cannot optimize the following
consedResources.o:
- $(CXX) $(WARNINGS) $(CFLGS) $(INC) $(DEPENDENCIES) -c consedResources.cpp
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(DEFS) -c consedResources.cpp
consedResources2.o:
- $(CXX) $(WARNINGS) $(CFLGS) $(INC) $(DEPENDENCIES) -c consedResources2.cpp
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(DEFS) -c consedResources2.cpp
# tlingit cannot optimize the following:
guiEditResources.o:
- $(CXX) $(WARNINGS) $(CFLGS) $(INC) $(DEPENDENCIES) -c guiEditResources.cpp
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(INCLUDES) $(DEFS) -c guiEditResources.cpp
guiEditResources.o : \
assemblyViewTagTypeAndLine.h assert.h bIsNumericDouble.h \
--- a/misc/454/Makefile
+++ b/misc/454/Makefile
@@ -0,0 +1,16 @@
+CC ?= cc
+LIBM = -lm
+
+DEFS = -DANSI_C
+
+OBJS= sff2scf.c
+
+sff2scf: $(OBJS)
+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBM)
+
+.c.o:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $<
+
+clean:
+ rm -f $(OBJS) sff2scf
+
--- a/misc/mktrace/Makefile
+++ b/misc/mktrace/Makefile
@@ -1,13 +1,17 @@
-CC= cc
-CFLAGS= -g
-CLIB= -lm
+CC ?= cc
+LIBM = -lm
+
+DEFS = -DANSI_C
OBJS= mktrace.o readFASTA.o writeSCF.o synTrace.o \
freeTrace.o rwUtil.o writePhd.o getTime.o \
readQUAL.o
mktrace: $(OBJS)
- $(CC) $(CFLAGS) -o mktrace $(OBJS) $(CLIB)
+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBM)
+
+.c.o:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $<
clean:
rm -f $(OBJS) mktrace
--- a/misc/phd2fasta/Makefile
+++ b/misc/phd2fasta/Makefile
@@ -1,8 +1,9 @@
-CC=cc
-CFLAGS=-O -w
-CLIB=-lm
+CC ?= cc
+LIBM = -lm
-OBJ= phd2fasta.o \
+DEFS = -DANSI_C
+
+OBJS= phd2fasta.o \
readParam.o initParam.o checkParam.o \
freeParam.o helpParam.o \
readFOF.o readDIR.o readFOX.o \
@@ -15,10 +16,11 @@
INC= phd2fasta.h
-SRC = $(OBJ:.o=.c)
-
-phd2fasta: $(OBJ)
- $(CC) $(CFLAGS) -o phd2fasta $(OBJ) $(CLIB)
+phd2fasta: $(OBJS)
+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(LIBM)
+
+.c.o:
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $<
clean:
rm -f $(OBJ) phd2fasta