Re-enable scripted dll install (Sorry, pushed wrong file before)

This commit is contained in:
dolphin6k 2020-10-18 21:50:20 +09:00
parent e260456270
commit b7c312ed5e
2 changed files with 50 additions and 28 deletions

View file

@ -1,15 +1,15 @@
# Tux Paint - A simple drawing program for children. # Tux Paint - A simple drawing program for children.
# Copyright (c) 2002-2019 # Copyright (c) 2002-2020
# Various contributors (see AUTHORS.txt) # Various contributors (see AUTHORS.txt)
# http://www.tuxpaint.org/ # http://www.tuxpaint.org/
# June 14, 2002 - October 29, 2019 # June 14, 2002 - October 15, 2020
# The version number, for release: # The version number, for release:
VER_VERSION:=0.9.24 VER_VERSION:=0.9.25
ifdef SOURCE_DATE_EPOCH ifdef SOURCE_DATE_EPOCH
VER_DATE=$(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u "+%Y-%m-%d") VER_DATE=$(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+%Y-%m-%d" 2>/dev/null || date -u "+%Y-%m-%d")
else else
@ -23,12 +23,12 @@ SYSNAME:=$(shell uname -s)
ifeq ($(findstring MINGW32, $(SYSNAME)),MINGW32) ifeq ($(findstring MINGW32, $(SYSNAME)),MINGW32)
OS:=windows OS:=windows
GPERF:=/usr/bin/gperf GPERF:=/usr/bin/gperf
MINGW_DIR=/mingw32 MINGW_DIR:=/mingw32
else else
ifeq ($(findstring MINGW64, $(SYSNAME)),MINGW64) ifeq ($(findstring MINGW64, $(SYSNAME)),MINGW64)
OS:=windows OS:=windows
GPERF:=/usr/bin/gperf GPERF:=/usr/bin/gperf
MINGW_DIR=/mingw64 MINGW_DIR:=/mingw64
else else
ifeq ($(SYSNAME),Darwin) ifeq ($(SYSNAME),Darwin)
OS:=osx OS:=osx
@ -122,10 +122,10 @@ PNG:=$(if $(PNG),$(PNG),$(call linktest,-lpng12,))
FRIBIDI_LIB:=$(shell $(PKG_CONFIG) --libs fribidi) FRIBIDI_LIB:=$(shell $(PKG_CONFIG) --libs fribidi)
FRIBIDI_CFLAGS:=$(shell $(PKG_CONFIG) --cflags fribidi) FRIBIDI_CFLAGS:=$(shell $(PKG_CONFIG) --cflags fribidi)
windows_ARCH_LINKS:=-lgdi32 -lcomdlg32 $(PNG) -lz -lwinspool -lshlwapi $(FRIBIDI_LIB) -liconv windows_ARCH_LINKS:=-lgdi32 -lcomdlg32 $(PNG) -lz -lwinspool -lshlwapi $(FRIBIDI_LIB) -liconv -limagequant
osx_ARCH_LINKS:=$(FRIBIDI_LIB) osx_ARCH_LINKS:=$(FRIBIDI_LIB) -limagequant
beos_ARCH_LINKS:=-lintl $(PNG) -lz -lbe -lnetwork -liconv $(FRIBIDI_LIB) $(PAPER_LIB) $(STDC_LIB) beos_ARCH_LINKS:=-lintl $(PNG) -lz -lbe -lnetwork -liconv $(FRIBIDI_LIB) $(PAPER_LIB) $(STDC_LIB) -limagequant
linux_ARCH_LINKS:=$(PAPER_LIB) $(FRIBIDI_LIB) linux_ARCH_LINKS:=$(PAPER_LIB) $(FRIBIDI_LIB) -limagequant
ARCH_LINKS:=$($(OS)_ARCH_LINKS) ARCH_LINKS:=$($(OS)_ARCH_LINKS)
windows_ARCH_HEADERS:=src/win32_print.h windows_ARCH_HEADERS:=src/win32_print.h
@ -715,14 +715,14 @@ $(THUMB_STARTERS):
@if [ "x" != "x"$(STARTER_BACK_NAME) ] ; \ @if [ "x" != "x"$(STARTER_BACK_NAME) ] ; \
then \ then \
composite $(STARTER_NAME) $(STARTER_BACK_NAME) obj/tmp_$(notdir $(STARTER_NAME)).png ; \ composite $(STARTER_NAME) $(STARTER_BACK_NAME) obj/tmp_$(notdir $(STARTER_NAME)).png ; \
convert $(CONVERT_OPTS) obj/tmp_$(notdir $(STARTER_NAME)).png $@ ; \ convert $(CONVERT_OPTS) obj/tmp_$(notdir $(STARTER_NAME)).png $@ 2> /dev/null ; \
rm obj/tmp_$(notdir $(STARTER_NAME)).png ; \ rm obj/tmp_$(notdir $(STARTER_NAME)).png ; \
else \ else \
convert $(CONVERT_OPTS) $(STARTER_NAME) $@ ; \ convert $(CONVERT_OPTS) $(STARTER_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
fi fi
$(INSTALLED_THUMB_STARTERS): $(DATA_PREFIX)/%: % $(INSTALLED_THUMB_STARTERS): $(DATA_PREFIX)/%: %
@install -D -m 644 $< $@ @install -D -m 644 $< $@ || ( echo "NO THUMB $<" )
.PHONY: echo-thumb-starters .PHONY: echo-thumb-starters
echo-thumb-starters: echo-thumb-starters:
@ -773,10 +773,10 @@ TEMPLATE_NAME=$(or $(wildcard $(subst templates/.thumbs,templates,$(@:-t.png=.sv
$(THUMB_TEMPLATES): $(THUMB_TEMPLATES):
@echo -n "." @echo -n "."
@mkdir -p templates/.thumbs @mkdir -p templates/.thumbs
@convert $(CONVERT_OPTS) $(TEMPLATE_NAME) $@ ; \ @convert $(CONVERT_OPTS) $(TEMPLATE_NAME) $@ 2> /dev/null || ( echo "($@ failed)" ; rm $@ ) ; \
$(INSTALLED_THUMB_TEMPLATES): $(DATA_PREFIX)/%: % $(INSTALLED_THUMB_TEMPLATES): $(DATA_PREFIX)/%: %
@install -D -m 644 $< $@ @install -D -m 644 $< $@ || ( echo "NO THUMB $<" )
.PHONY: echo-thumb-templates .PHONY: echo-thumb-templates
echo-thumb-templates: echo-thumb-templates:
@ -871,23 +871,23 @@ install-bin:
@cp tuxpaint$(EXE_EXT) $(BIN_PREFIX) @cp tuxpaint$(EXE_EXT) $(BIN_PREFIX)
@chmod a+rx,g-w,o-w $(BIN_PREFIX)/tuxpaint$(EXE_EXT) @chmod a+rx,g-w,o-w $(BIN_PREFIX)/tuxpaint$(EXE_EXT)
# Install the required Windows DLLs into the 'bdist' directory # Install tuxpaint-config and required Windows DLLs into the 'bdist' directory
.PHONY: install-dlls .PHONY: install-dlls
install-dlls: install-dlls:
@echo @echo
@echo "...Installing Windows DLLs..." @echo "...Installing Windows DLLs..."
@install -d $(BIN_PREFIX) @install -d $(BIN_PREFIX)
@cp $(TPCONF_PATH)/tuxpaint-config.exe $(BIN_PREFIX) @cp $(TPCONF_PATH)/tuxpaint-config.exe $(BIN_PREFIX)
@src/install-dlls.sh $(TPCONF_PATH) $(BIN_PREFIX) @src/install-dlls.sh tuxpaint.exe $(TPCONF_PATH)/tuxpaint-config.exe $(BIN_PREFIX)
@strip -s $(BIN_PREFIX)/*.dll @strip -s $(BIN_PREFIX)/*.dll
echo; \ @echo
echo "...Installing Configuration Files..."; \ @echo "...Installing Configuration Files..."
cp -R win32/etc/ $(BIN_PREFIX); \ @cp -R win32/etc/ $(BIN_PREFIX)
echo; \ @echo
echo "...Installing Library Modules..."; \ @echo "...Installing Library Modules..."
mkdir -p $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders; \ @mkdir -p $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
cp $(MINGW_DIR)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders; \ @cp $(MINGW_DIR)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders
strip -s $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll; \ @strip -s $(BIN_PREFIX)/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.dll
# Install symlink: # Install symlink:
.PHONY: install-haiku .PHONY: install-haiku
@ -997,6 +997,7 @@ TuxPaint.dmg:
tuxpaint: obj/tuxpaint.o obj/i18n.o obj/im.o obj/cursor.o obj/pixels.o \ tuxpaint: obj/tuxpaint.o obj/i18n.o obj/im.o obj/cursor.o obj/pixels.o \
obj/rgblinear.o obj/playsound.o obj/fonts.o obj/parse.o obj/fill.o \ obj/rgblinear.o obj/playsound.o obj/fonts.o obj/parse.o obj/fill.o \
obj/progressbar.o obj/dirwalk.o obj/get_fname.o obj/onscreen_keyboard.o \ obj/progressbar.o obj/dirwalk.o obj/get_fname.o obj/onscreen_keyboard.o \
obj/gifenc.o \
$(ARCH_LIBS) $(ARCH_LIBS)
@echo @echo
@echo "...Linking Tux Paint..." @echo "...Linking Tux Paint..."
@ -1017,6 +1018,7 @@ obj/tuxpaint.o: src/tuxpaint.c \
src/tools.h src/titles.h src/colors.h src/shapes.h \ src/tools.h src/titles.h src/colors.h src/shapes.h \
src/sounds.h src/tip_tux.h src/great.h \ src/sounds.h src/tip_tux.h src/great.h \
src/tp_magic_api.h src/parse.h src/onscreen_keyboard.h \ src/tp_magic_api.h src/parse.h src/onscreen_keyboard.h \
src/gifenc.h \
src/$(MOUSEDIR)/arrow.xbm src/$(MOUSEDIR)/arrow-mask.xbm \ src/$(MOUSEDIR)/arrow.xbm src/$(MOUSEDIR)/arrow-mask.xbm \
src/$(MOUSEDIR)/hand.xbm src/$(MOUSEDIR)/hand-mask.xbm \ src/$(MOUSEDIR)/hand.xbm src/$(MOUSEDIR)/hand-mask.xbm \
src/$(MOUSEDIR)/insertion.xbm \ src/$(MOUSEDIR)/insertion.xbm \
@ -1102,6 +1104,12 @@ obj/pixels.o: src/pixels.c src/pixels.h src/compiler.h src/debug.h
@$(CC) $(CFLAGS) $(DEBUG_FLAGS) $(SDL_CFLAGS) $(DEFS) \ @$(CC) $(CFLAGS) $(DEBUG_FLAGS) $(SDL_CFLAGS) $(DEFS) \
-c src/pixels.c -o obj/pixels.o -c src/pixels.c -o obj/pixels.o
obj/gifenc.o: src/gifenc.c src/gifenc.h
@echo
@echo "...Compiling animated GIF export libary..."
@$(CC) $(CFLAGS) $(DEBUG_FLAGS) $(DEFS) \
-c src/gifenc.c -o obj/gifenc.o
obj/playsound.o: src/playsound.c src/playsound.h \ obj/playsound.o: src/playsound.c src/playsound.h \
src/compiler.h src/debug.h src/compiler.h src/debug.h
@echo @echo

View file

@ -1,6 +1,20 @@
#!/bin/sh #!/bin/sh
for dll in `ldd tuxpaint.exe $1/tuxpaint-config.exe 2>&1 | grep /mingw | awk '{print $3}' | sort | uniq` find_depends(){
do for dllpath in `ntldd $@ | grep mingw | awk '{print $3}' | sort | uniq`
cp $dll $2 do
done dllname=`basename $dllpath`
if ! grep -q $dllname dlllist; then
echo $dllpath >> dlllist
echo -n .
cp $dllpath $DESTDIR/
find_depends $dllpath
fi
done
}
DESTDIR=$3
echo > dlllist
find_depends $1 $2
echo