From 70dd5ad8292e987e5f4a19e3782f947e6c557383 Mon Sep 17 00:00:00 2001 From: Sojourner Truth <jon.w.wilkes@gmail.com> Date: Mon, 15 Aug 2016 18:26:38 -0400 Subject: [PATCH] fixes for building on Windows * fix typo introduced into tar_em_up.sh * remove flext and rtcmix from LIB_TARGETS * selectively compile disis classes on Windows * use Program Files (x86) for win64 --- externals/Makefile | 9 ++++++--- externals/disis/makefile | 19 +++++++++++++++---- l2ork_addons/tar_em_up.sh | 2 +- packages/win32_inno/Makefile | 7 ++++++- 4 files changed, 28 insertions(+), 9 deletions(-) diff --git a/externals/Makefile b/externals/Makefile index 61dd01b3f..c3de5540c 100644 --- a/externals/Makefile +++ b/externals/Makefile @@ -128,7 +128,7 @@ CXXFLAGS = $(CFLAGS) # # WARNING! this MUST be all on one line because the automatic package # building scripts rely on it being that way. -LIB_TARGETS = adaptive arraysize autotune bassemu boids bsaylor comport creb cxc cyclone disis earplug ekext ext13 fftease fluid freeverb ggee hcs iem_ambi iem_bin_ambi iemlib iemgui iemguts iem_adaptfilt iemmatrix iemxmlrpc iem_delay iem_roomsim iem_spec2 iem_tab jasch_lib loaders-hexloader loaders-libdir lyonpotpourri mapping markex maxlib mjlib moocow moonlib motex mrpeach oscx pan pdcontainer pddp pdogg plugin pmpd rjlib rtcmix sigpack smlib tof unauthorized vbap windowing zexy flext +LIB_TARGETS = adaptive arraysize autotune bassemu boids bsaylor comport creb cxc cyclone disis earplug ekext ext13 fftease fluid freeverb ggee hcs iem_ambi iem_bin_ambi iemlib iemgui iemguts iem_adaptfilt iemmatrix iemxmlrpc iem_delay iem_roomsim iem_spec2 iem_tab jasch_lib loaders-hexloader loaders-libdir lyonpotpourri mapping markex maxlib mjlib moocow moonlib motex mrpeach oscx pan pdcontainer pddp pdogg plugin pmpd rjlib sigpack smlib tof unauthorized vbap windowing zexy # DISABLED: flatgui @@ -448,9 +448,11 @@ cyclone_clean: #------------------------------------------------------------------------------# # DISIS disis: +ifneq ($(OS_NAME),windows) cd $(externals_src)/disis/cwiid && aclocal && autoconf && \ ./configure --with-python=python2 && make - make -C $(externals_src)/disis PD_PATH=$(pd_src) +endif + make -C $(externals_src)/disis PD_PATH=$(pd_src) pdbinpath=$(pd_src)/src disis_install: make -C $(externals_src)/disis \ @@ -603,7 +605,8 @@ flib_clean: # FLUID~ fluid: - make -C $(externals_src)/fluid~ PD_PATH=$(pd_src) + make -C $(externals_src)/fluid~ PD_PATH=$(pd_src) \ + pdbinpath=$(pd_src)/src fluid_install: make -C $(externals_src)/fluid~ DESTDIR="$(DESTDIR)" \ diff --git a/externals/disis/makefile b/externals/disis/makefile index 322031584..ebac23f23 100755 --- a/externals/disis/makefile +++ b/externals/disis/makefile @@ -2,7 +2,13 @@ lib.name = disis -class.sources = disis_phasor~.c disis_netsend.c disis_netreceive.c +class.sources = disis_phasor~.c +define forLinux + class.sources += disis_netsend.c disis_netreceive.c +endef +define forDarwin + class.sources += disis_netsend.c disis_netreceive.c +endef datafiles = disis_phasor~-help.pd disis_netsend-help.pd disis_netreceive-help.pd disis_wiimote-help.pd disis_wiimote_legacy.pd README patch_name-help.pd patch_name.pd @@ -16,8 +22,13 @@ CWIID_LIB_STATIC= $(CWIID_PATH)/libcwiid/libcwiid.a CWIID_INCLUDE = -I$(CWIID_PATH)/libcwiid cflags = $(CWIID_INCLUDE) -disis_wiimote.class.sources = disis_wiimote.c - -disis_wiimote.class.ldlibs = $(CWIID_LIB_STATIC) -lbluetooth -lpthread +define forDarwin + disis_wiimote.class.sources = disis_wiimote.c + disis_wiimote.class.ldlibs = $(CWIID_LIB_STATIC) -lbluetooth -lpthread +endef +define forLinux + disis_wiimote.class.sources = disis_wiimote.c + disis_wiimote.class.ldlibs = $(CWIID_LIB_STATIC) -lbluetooth -lpthread +endef include Makefile.pdlibbuilder diff --git a/l2ork_addons/tar_em_up.sh b/l2ork_addons/tar_em_up.sh index 44ea5fad2..9f465dab4 100755 --- a/l2ork_addons/tar_em_up.sh +++ b/l2ork_addons/tar_em_up.sh @@ -290,7 +290,7 @@ then cd ../../ fi # install raspberry pi externals (if applicable) - if [ $inno -eq 0]; then + if [ $inno -eq 0 ]; then cd raspberry_pi ./makeall.sh cp -f disis_gpio/disis_gpio.pd_linux ../../packages/linux_make/build$inst_dir/lib/pd-l2ork/extra diff --git a/packages/win32_inno/Makefile b/packages/win32_inno/Makefile index 91616aa06..c60f45536 100755 --- a/packages/win32_inno/Makefile +++ b/packages/win32_inno/Makefile @@ -32,8 +32,13 @@ PD_INNO_SETUP = pd-inno.iss package: $(PD_INNO_SETUP) ## this pops up the GUI app # start $(PD_INNO_SETUP) -## this compiles the package on the command line +## this compiles the package on the command line. On 64-bit Windows +# we have to look in a different path, hence the ugly ifeq below... +ifeq (,$(wildcard /c/Program\ Files/Inno\ Setup\ 5/ISCC.exe)) + /c/Program\ Files\ \(x86\)/Inno\ Setup\ 5/ISCC.exe $(PD_INNO_SETUP) +else /c/Program\ Files/Inno\ Setup\ 5/ISCC.exe $(PD_INNO_SETUP) +endif @echo " " @echo "win32_inno install succeeded!" -- GitLab