DIRECTORY_ARCHIVES += lib/UnrarXLib/UnrarXLib.a
endif
-BIN_DIRS = $(dir $(DIRECTORY_ARCHIVES)) $(dir $(NWAOBJSXBMC))
-
ifeq (@USE_ANDROID@,1)
DIRECTORY_ARCHIVES += xbmc/android/loader/AndroidDyload.a
DIRECTORY_ARCHIVES += xbmc/windowing/android/windowing_android.a
-DIRECTORY_ARCHIVES += xbmc/android/activity/activity.a
DIRECTORY_ARCHIVES += xbmc/android/bionic_supplement/bionic_supplement.a
DIRECTORY_ARCHIVES += xbmc/android/jni/jni.a
endif
endif
PAPCODECS_DIRS= \
- lib/xbadpcm \
lib/nosefart \
lib/timidity \
lib/libsidplay2 \
SKIN_DIRS+=$(TOUCHED_MEDIA)
endif
-DIRS= $(BIN_DIRS) $(EC_DIRS) $(XBMCTEX_DIRS) $(DVDPCODECS_DIRS) $(PAPCODECS_DIRS) \
- $(LIB_DIRS) $(SS_DIRS) $(VIS_DIRS) $(LIBADDON_DIRS) $(SKIN_DIRS) xbmc/main
-
LIBS=@LIBS@
CFLAGS=@CFLAGS@
CXXFLAGS=@CXXFLAGS@
xbmc/cores/paplayer/paplayer.a: papcodecs
$(DVDPLAYER_ARCHIVES) : dvdpcodecs
-$(NWAOBJSXBMC): force
- @$(MAKE) $(if $(V),,-s) -C $(@D)
-
-$(DIRECTORY_ARCHIVES): force
- @$(MAKE) $(if $(V),,-s) -C $(@D)
-
lib/cpluff/libcpluff/.libs/libcpluff.a: force
$(MAKE) -C lib/cpluff/libcpluff
system/libcpluff-@ARCH@.so: lib/cpluff/libcpluff/.libs/libcpluff.a exports
$(MAKE) -C lib/libhdhomerun
papcodecs: dllloader dvdpcodecs
test -d system/players/paplayer || mkdir system/players/paplayer
- $(MAKE) -C lib/xbadpcm
$(MAKE) -C lib/vgmstream
$(MAKE) -C lib/timidity
$(MAKE) -C lib/nosefart
lib/libXDAAP/libxdaap.a \
lib/SlingboxLib/SlingboxLib.a
-OBJSXBMC =$(DIRECTORY_ARCHIVES)
-
DYNOBJSXBMC= \
xbmc/linux/linux.a \
xbmc/network/network.a \
DYNOBJSXBMC+= xbmc/freebsd/freebsd.a
endif
-OBJSXBMC:=$(filter-out $(DYNOBJSXBMC), $(OBJSXBMC))
+ifeq (@USE_STATIC_FFMPEG@,1)
+FFMPEGOBJS = lib/ffmpeg/libavcodec/libavcodec.a \
+ lib/ffmpeg/libavfilter/libavfilter.a \
+ lib/ffmpeg/libswresample/libswresample.a \
+ lib/ffmpeg/libavformat/libavformat.a \
+ lib/ffmpeg/libavutil/libavutil.a \
+ lib/ffmpeg/libpostproc/libpostproc.a \
+ lib/ffmpeg/libswscale/libswscale.a
+DYNOBJSXBMC+= $(FFMPEGOBJS)
+LIBS+= @GNUTLS_ALL_LIBS@ @VORBISENC_ALL_LIBS@
-MAINOBJS=xbmc/xbmc.o
-ifeq (@USE_ANDROID@,1)
-MAINOBJS+=xbmc/android/activity/android_main.o
+$(FFMPEGOBJS): dvdpcodecs
endif
+
ifneq (@USE_LIBXBMC@,1)
-MAINOBJS+=xbmc/main/main.o
-endif
+MAINOBJS+=xbmc/main/main.a
+else
+ifeq (@USE_ANDROID@,1)
+MAINOBJS+=xbmc/android/activity/activity.a
+endif # USE_ANDROID
+endif # USE_LIBXBMC
+
+
+OBJSXBMC =$(DIRECTORY_ARCHIVES)
+OBJSXBMC:=$(filter-out $(DYNOBJSXBMC), $(OBJSXBMC))
+
+BIN_DIRS = $(dir $(DIRECTORY_ARCHIVES)) $(dir $(NWAOBJSXBMC)) $(dir $(MAINOBJS))
+
+DIRS= $(BIN_DIRS) $(EC_DIRS) $(XBMCTEX_DIRS) $(DVDPCODECS_DIRS) $(PAPCODECS_DIRS) \
+ $(LIB_DIRS) $(SS_DIRS) $(VIS_DIRS) $(LIBADDON_DIRS) $(SKIN_DIRS) xbmc/main
+
+$(NWAOBJSXBMC) $(DIRECTORY_ARCHIVES) $(MAINOBJS): force
+ @$(MAKE) $(if $(V),,-s) -C $(@D)
# sync these entries manually with tools/depends/target/xbmc-addon-bindings/Makefile
BINDINGS =xbmc/addons/include/xbmc_addon_cpp_dll.h
libxbmc.so: $(OBJSXBMC) $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(MAINOBJS)
ifeq ($(findstring osx,@ARCH@), osx)
- $(SILENT_LD) $(CXX) $(LDFLAGS) -bundle -o $@ -Wl,-all_load,-ObjC $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(OBJSXBMC) $(LIBS) -read_only_relocs suppress
+ $(SILENT_LD) $(CXX) $(LDFLAGS) -bundle -o $@ $(MAINOBJS) -Wl,-all_load,-ObjC $(MAINOBJS) $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(OBJSXBMC) $(LIBS) -read_only_relocs suppress
else
- $(SILENT_LD) $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared -o $@ $(MAINOBJS) -Wl,--start-group $(DYNOBJSXBMC) $(OBJSXBMC) -Wl,--end-group -Wl,--no-undefined $(NWAOBJSXBMC) $(LIBS)
+ $(SILENT_LD) $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared -o $@ -Wl,--whole-archive $(MAINOBJS) -Wl,--no-whole-archive,--start-group $(MAINOBJS) $(DYNOBJSXBMC) $(OBJSXBMC) -Wl,--end-group -Wl,--no-undefined $(NWAOBJSXBMC) $(LIBS)
endif
-xbmc/main/main.a: force
- $(MAKE) -C xbmc/main
-
-xbmc.bin: $(OBJSXBMC) $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(MAINOBJS) xbmc/main/main.a
+xbmc.bin: $(OBJSXBMC) $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(MAINOBJS)
ifeq ($(findstring osx,@ARCH@), osx)
- $(SILENT_LD) $(CXX) $(LDFLAGS) -o xbmc.bin xbmc/main/main.a -Wl,-all_load,-ObjC $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(OBJSXBMC) $(LIBS) -rdynamic
+ $(SILENT_LD) $(CXX) $(LDFLAGS) -o xbmc.bin $(MAINOBJS) -Wl,-all_load,-ObjC $(MAINOBJS) $(DYNOBJSXBMC) $(NWAOBJSXBMC) $(OBJSXBMC) $(LIBS) -rdynamic
else
- $(SILENT_LD) $(CXX) $(CXXFLAGS) $(LDFLAGS) -o xbmc.bin $(MAINOBJS) -Wl,--start-group $(DYNOBJSXBMC) $(OBJSXBMC) -Wl,--end-group $(NWAOBJSXBMC) $(LIBS) -rdynamic
+ $(SILENT_LD) $(CXX) $(CXXFLAGS) $(LDFLAGS) -o xbmc.bin $(MAINOBJS) -Wl,--start-group $(MAINOBJS) $(DYNOBJSXBMC) $(OBJSXBMC) -Wl,--end-group $(NWAOBJSXBMC) $(LIBS) -rdynamic
endif
xbmc-xrandr: xbmc-xrandr.c
else
install: install-binaries install-arch install-datas
-apk: uninstall apk-clean install
+apk: apk-clean install
make -C tools/android/packaging
apk-clean: