L_BLDDIRS_$P += ${OBJSDIR_$P}
L_BLDDIRS_$P += ${DEPSDIR_$P}
-L_BLDDIRS_$P += ${WORKINGDIR_$P}
+L_BLDDIRS_$P += ${BINDIR_$P}
L_DEPS += ${L_DEPS_$P}
L_BLDDIRS += ${L_BLDDIRS_$P}
${INSTALL} -t ${includedir}/bear inc/*
ln -sfn ${REALNAME} ${libdir}/${LINKERNAME}
ln -sfn ${REALNAME} ${libdir}/${SONAME}
- ${INSTALL} -t ${libdir} ${WORKINGDIR}${REALNAME}
+ ${INSTALL} -t ${libdir} ${BINDIR}${REALNAME}
# HACK uninstall
uninstall:
cleanbin: cleanbin-$P
.PHONY: cleanbin-$P
cleanbin-$P:
- ${Q1}${PRNTFMT} "rm" "${WORKINGDIR}"
- ${Q2}rm -rf ${WORKINGDIR}
+ ${Q1}${PRNTFMT} "rm" "${BINDIR}"
+ ${Q2}rm -rf ${BINDIR}
L_CLEANCMDS += cleanobjs-$P
cleanobjs: cleanobjs-$P
${TARGETTMP_$P}: LNKFLAGS := ${LNKFLAGS_$P}
${TARGETTMP_$P}: LIBS := ${LIBS_$P}
-cleanbin-$P: WORKINGDIR := ${WORKINGDIR_$P}
+cleanbin-$P: BINDIR := ${BINDIR_$P}
cleanobjs-$P: OBJSDIR := ${OBJSDIR_$P}
cleandeps-$P: DEPSDIR := ${DEPSDIR_$P}
CXXFLAGS_$P := ${G_CXXFLAGS} -fPIC
LIBS_$P := ${G_LIBSDL} ${G_LIBGL}
-SRCSDIR_$P := ${CURDIR}src/
-DEPSDIR_$P := ${CURDIR}deps/
+SRCSDIR_$P := ${CURDIR}${G_SRCSDIR}
+DEPSDIR_$P := ${CURDIR}${G_DEPSDIR}
+OBJSDIR_$P := ${CURDIR}${G_OBJSDIR}
+BINDIR_$P := ${CURDIR}${G_BINDIR}
+
T_INCDIRS_$P := ${SRCSDIR_$P} ${CURDIR}inc/
INCFLAGS_$P := $(addprefix -I, ${T_INCDIRS_$P})
ifeq (${BUILD},WIN32)
- OBJSDIR_$P := ${CURDIR}objs-mingw32/
-else
-ifeq (${BUILD},FINAL)
- OBJSDIR_$P := ${CURDIR}objs/
-else
- OBJSDIR_$P := ${CURDIR}objsd/
-endif
-endif
-
-ifeq (${BUILD},WIN32)
- WORKINGDIR_$P := ${CURDIR}bin-mingw32/
-else
-ifeq (${BUILD},FINAL)
- WORKINGDIR_$P := ${CURDIR}bin/
-else
- WORKINGDIR_$P := ${CURDIR}bind/
-endif
-endif
-
-
-ifeq (${BUILD},WIN32)
LINKERNAME_$P := bear.dll
SONAME_$P := bear.dll
REALNAME_$P := bear.dll
G_DEPS_LIB := deps-${G_LIB}
.PHONY: ${G_DEPS_LIB}
-TARGET_${G_LIB} := ${WORKINGDIR_${G_LIB}}${REALNAME_${G_LIB}}
+TARGET_${G_LIB} := ${BINDIR_${G_LIB}}${REALNAME_${G_LIB}}
G_TESTS := ${P_TESTS}
L_BLDDIRS_$P += ${OBJSDIR_$P}
L_BLDDIRS_$P += ${DEPSDIR_$P}
-L_BLDDIRS_$P += ${WORKINGDIR_$P}
+L_BLDDIRS_$P += ${BINDIR_$P}
L_DEPS += ${L_DEPS_$P}
L_BLDDIRS += ${L_BLDDIRS_$P}
${G_DEPS_TESTS}: ${L_DEPS_$P}
# how to copy a library to the tests bin directory
-${WORKINGDIR_$P}${SONAME_${G_LIB}}: ${TARGET_${G_LIB}} | $${@D}
+${BINDIR_$P}${SONAME_${G_LIB}}: ${TARGET_${G_LIB}} | $${@D}
${cmd-cp}
# rule to make an object file from a .cpp
cleanbin: cleanbin-$P
.PHONY: cleanbin-$P
cleanbin-$P:
- ${Q1}${PRNTFMT} "rm" "${WORKINGDIR}"
- ${Q2}rm -rf ${WORKINGDIR}
+ ${Q1}${PRNTFMT} "rm" "${BINDIR}"
+ ${Q2}rm -rf ${BINDIR}
L_CLEANCMDS += cleanobjs-$P
cleanobjs: cleanobjs-$P
${G_TESTS}-${DIRNAME}: ${TARGET_$D}
# this test depends on the G_LIB library
-${TARGETTMP_$D}: ${WORKINGDIR_$P}${SONAME_${G_LIB}}
+${TARGETTMP_$D}: ${BINDIR_$P}${SONAME_${G_LIB}}
# how to link the main target
${TARGETTMP_$D}: ${L_OBJS_$D} | $${@D}
LNKFLAGS_$D := ${LNKFLAGS_$P}
LIBS_$D := ${LIBS_$P}
-TARGETNAME_$D := test-1
+TARGETNAME_$D := ${TARGETPRE_$P}${DIRNAME}
TARGETTMP_$D := ${OBJSDIR_$P}${TARGETNAME_$D}
-TARGET_$D := ${WORKINGDIR_$P}${TARGETNAME_$D}
+TARGET_$D := ${BINDIR_$P}${TARGETNAME_$D}
${G_TESTS}-${DIRNAME}: ${TARGET_$D}
# this test depends on the G_LIB library
-${TARGETTMP_$D}: ${WORKINGDIR_$P}${SONAME_${G_LIB}}
+${TARGETTMP_$D}: ${BINDIR_$P}${SONAME_${G_LIB}}
# how to link the main target
${TARGETTMP_$D}: ${L_OBJS_$D} | $${@D}
LNKFLAGS_$D := ${LNKFLAGS_$P}
LIBS_$D := ${LIBS_$P}
-TARGETNAME_$D := test-printTrace
+TARGETNAME_$D := ${TARGETPRE_$P}${DIRNAME}
TARGETTMP_$D := ${OBJSDIR_$P}${TARGETNAME_$D}
-TARGET_$D := ${WORKINGDIR_$P}${TARGETNAME_$D}
+TARGET_$D := ${BINDIR_$P}${TARGETNAME_$D}
${L_DEPS_$P}: DEPSDIR := ${DEPSDIR_$P}
${L_DEPS_$P}: OBJSDIR := ${OBJSDIR_$P}
-cleanbin-$P: WORKINGDIR := ${WORKINGDIR_$P}
+cleanbin-$P: BINDIR := ${BINDIR_$P}
cleanobjs-$P: OBJSDIR := ${OBJSDIR_$P}
cleandeps-$P: DEPSDIR := ${DEPSDIR_$P}
LNKFLAGS_$P := ${G_LNKFLAGS} -Wl,-rpath,./ -rdynamic
LIBS_$P := ${G_LIBSDL} ${G_LIBGL}
+SRCSDIR_$P := ${CURDIR}${G_SRCSDIR}
+DEPSDIR_$P := ${CURDIR}${G_DEPSDIR}
+OBJSDIR_$P := ${CURDIR}${G_OBJSDIR}
+BINDIR_$P := ${CURDIR}${G_BINDIR}
+
+# HACK
T_INCDIRS_$P := lib/inc/
INCFLAGS_$P := $(addprefix -I, ${T_INCDIRS_$P})
T_INCDIRS_$P := # empty
-
-SRCSDIR_$P := ${CURDIR}src/
-DEPSDIR_$P := ${CURDIR}deps/
-
-ifeq (${BUILD},WIN32)
- OBJSDIR_$P := ${CURDIR}objs-mingw32/
-else
-ifeq (${BUILD},FINAL)
- OBJSDIR_$P := ${CURDIR}objs/
-else
- OBJSDIR_$P := ${CURDIR}objsd/
-endif
-endif
-
-ifeq (${BUILD},WIN32)
- WORKINGDIR_$P := ${CURDIR}bin-mingw32/
-else
-ifeq (${BUILD},FINAL)
- WORKINGDIR_$P := ${CURDIR}bin/
-else
- WORKINGDIR_$P := ${CURDIR}bind/
-endif
-endif
+TARGETPRE_$P := test-
G_LIBSDL := `sdl-config --libs`
endif
+G_SRCSDIR := src/
+G_DEPSDIR := deps/
+
+ifeq (${BUILD},WIN32)
+ G_OBJSDIR := objs-mingw32/
+ G_BINDIR := bin-mingw32/
+else
+ifeq (${BUILD},FINAL)
+ G_OBJSDIR := objs/
+ G_BINDIR := bin/
+else
+ G_OBJSDIR := objsd/
+ G_BINDIR := bind/
+endif
+endif
+
ifeq (${BUILD},WIN32)
PRNTFMT := printf "%-12s: %s\n"