From a9cede2d5e9fba3bfa0a8945020586c79e0a7437 Mon Sep 17 00:00:00 2001 From: Sebastien Lugan Date: Thu, 12 Feb 2004 16:07:03 +0000 Subject: [PATCH] Automatic creation of building directories during make --- codec/Makefile | 24 +++++++++++++++++++----- libopenjpeg/Makefile | 12 ++++++++++-- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/codec/Makefile b/codec/Makefile index 02d80f3c..27dc9a5c 100644 --- a/codec/Makefile +++ b/codec/Makefile @@ -22,13 +22,15 @@ ifdef MINGW32 OBJ_DIR = $(OBJ_DIR_W32) BIN_DIR = $(BIN_DIR_W32) LIB_DIR = lib.w32 - all: $(addprefix $(BIN_DIR)/,j2k_to_image.exe image_to_j2k.exe) + all: $(BIN_DIR) $(OBJ_DIR) $(LIB_DIR) \ + $(addprefix $(BIN_DIR)/,j2k_to_image.exe image_to_j2k.exe) else CC = gcc OBJ_DIR = obj BIN_DIR = bin LIB_DIR = lib - all: $(addprefix $(BIN_DIR)/,j2k_to_image image_to_j2k) + all: $(BIN_DIR) $(OBJ_DIR) $(LIB_DIR) \ + $(addprefix $(BIN_DIR)/,j2k_to_image image_to_j2k) endif ifdef DYNAMIC @@ -44,14 +46,26 @@ else LDFLAGS += $(LIB_OPENJPEG) endif +$(BIN_DIR): + mkdir $(BIN_DIR) + +$(OBJ_DIR): + mkdir $(OBJ_DIR) + +$(LIB_DIR): + mkdir $(LIB_DIR) + $(LIB_DIR)/libopenjpeg.dll: $(OPENJPEG_DIR)/$(LIB_DIR)/libopenjpeg.dll ln -sf ../$< $@ $(OPENJPEG_DIR)/$(LIB_DIR)/libopenjpeg.dll: - cd $(OPENJPEG_DIR) && $(MAKE) $(LIB_DIR)/libopenjpeg.dll + cd $(OPENJPEG_DIR) && \ + $(MAKE) $(OBJ_DIR) $(LIB_DIR) $(LIB_DIR)/libopenjpeg.dll $(OPENJPEG_DIR)/$(LIB_DIR)/libopenjpeg.a: - cd $(OPENJPEG_DIR) && $(MAKE) $(LIB_DIR)/libopenjpeg.a + cd $(OPENJPEG_DIR) && \ + $(MAKE) $(OBJ_DIR) $(LIB_DIR) $(LIB_DIR)/libopenjpeg.a $(OPENJPEG_DIR)/$(LIB_DIR)/libopenjpeg.so: - cd $(OPENJPEG_DIR) && $(MAKE) $(LIB_DIR)/libopenjpeg.so + cd $(OPENJPEG_DIR) && \ + $(MAKE) $(LIB_DIR) $(LIB_DIR)/libopenjpeg.so $(OBJ_DIR)/%.o: $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $< diff --git a/libopenjpeg/Makefile b/libopenjpeg/Makefile index 63a5f322..4794d166 100644 --- a/libopenjpeg/Makefile +++ b/libopenjpeg/Makefile @@ -18,15 +18,23 @@ ifdef MINGW32 AR = i386-mingw32-ar OBJ_DIR = $(OBJ_DIR_W32) LIB_DIR = $(LIB_DIR_W32) - all: $(LIB_DIR)/libopenjpeg.a $(LIB_DIR)/libopenjpeg.dll + all: $(OBJ_DIR) $(LIB_DIR) \ + $(LIB_DIR)/libopenjpeg.a $(LIB_DIR)/libopenjpeg.dll else CC = gcc AR = ar OBJ_DIR = obj LIB_DIR = lib - all: $(LIB_DIR)/libopenjpeg.a $(LIB_DIR)/libopenjpeg.so + all: $(OBJ_DIR) $(LIB_DIR) \ + $(LIB_DIR)/libopenjpeg.a $(LIB_DIR)/libopenjpeg.so endif +$(OBJ_DIR): + mkdir $(OBJ_DIR) + +$(LIB_DIR): + mkdir $(LIB_DIR) + $(OBJ_DIR)/%.o: $(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $<