comparison Makefile @ 2896:e1dfc65af0fb libavcodec

support for building dynamic libraries on Mac OS X based on a patch by Lina Pezzella <J4rg0n -- at -- gentoo -- dot -- org>
author diego
date Mon, 26 Sep 2005 10:05:13 +0000
parents 062b2d5d1eba
children 5b9aff7944a4
comparison
equal deleted inserted replaced
2895:8fe1dc88294a 2896:e1dfc65af0fb
375 endif 375 endif
376 ifeq ($(TARGET_ARCH_SPARC64),yes) 376 ifeq ($(TARGET_ARCH_SPARC64),yes)
377 CFLAGS+= -mcpu=ultrasparc -mtune=ultrasparc 377 CFLAGS+= -mcpu=ultrasparc -mtune=ultrasparc
378 endif 378 endif
379 379
380 # Darwin specific stuff
381 ifeq ($(CONFIG_DARWIN),yes)
382 SHFLAGS += -Wl,-install_name,$(libdir)/$(SLIBPREF)avcodec$(SLIBSUF),-current_version,$(SPPVERSION),-compatibility_version,$(SPPVERSION)
383 endif
384
380 SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S) 385 SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S)
381 OBJS := $(OBJS) $(ASM_OBJS) 386 OBJS := $(OBJS) $(ASM_OBJS)
382 387
383 LIB= $(LIBPREF)avcodec$(LIBSUF) 388 LIB= $(LIBPREF)avcodec$(LIBSUF)
384 LIBAVUTIL= $(SRC_PATH)/libavutil/$(LIBPREF)avutil$(LIBSUF) 389 LIBAVUTIL= $(SRC_PATH)/libavutil/$(LIBPREF)avutil$(LIBSUF)
385 ifeq ($(BUILD_SHARED),yes) 390 ifeq ($(BUILD_SHARED),yes)
386 SLIB= $(SLIBPREF)avcodec$(SLIBSUF) 391 SLIBNAME= $(SLIBPREF)avcodec$(SLIBSUF)
387 endif 392 endif
388 TESTS= imgresample-test dct-test motion-test fft-test 393 TESTS= imgresample-test dct-test motion-test fft-test
389 394
390 all: $(LIB) $(SLIB) 395 all: $(LIB) $(SLIBNAME)
391 396
392 amrlibs: 397 amrlibs:
393 $(MAKE) -C amr spclib fipoplib 398 $(MAKE) -C amr spclib fipoplib
394 399
395 tests: apiexample cpuid_test $(TESTS) 400 tests: apiexample cpuid_test $(TESTS)
397 $(LIB): $(OBJS) $(AMRLIBS) 402 $(LIB): $(OBJS) $(AMRLIBS)
398 rm -f $@ 403 rm -f $@
399 $(AR) rc $@ $(OBJS) $(AMREXTRALIBS) 404 $(AR) rc $@ $(OBJS) $(AMREXTRALIBS)
400 $(RANLIB) $@ 405 $(RANLIB) $@
401 406
402 $(SLIB): $(OBJS) 407 $(SLIBNAME): $(OBJS)
403 ifeq ($(CONFIG_PP),yes) 408 ifeq ($(CONFIG_PP),yes)
404 $(MAKE) -C libpostproc 409 $(MAKE) -C libpostproc
405 endif 410 endif
406 ifeq ($(CONFIG_WIN32),yes) 411 ifeq ($(CONFIG_WIN32),yes)
407 $(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS) 412 $(CC) $(SHFLAGS) -Wl,--output-def,$(@:.dll=.def) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS)
408 -lib /machine:i386 /def:$(@:.dll=.def) 413 -lib /machine:i386 /def:$(@:.dll=.def)
409 else 414 else
410 $(CC) $(SHFLAGS) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS) $(LDFLAGS) 415 $(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(EXTRALIBS) $(AMREXTRALIBS)
411 endif 416 endif
412 417
413 dsputil.o: dsputil.c dsputil.h 418 dsputil.o: dsputil.c dsputil.h
414 419
415 libpostproc/libpostproc.a: 420 libpostproc/libpostproc.a:
425 $(CC) -MM $(CFLAGS) $^ 1>.depend 430 $(CC) -MM $(CFLAGS) $^ 1>.depend
426 431
427 dep: depend 432 dep: depend
428 433
429 clean: $(CLEANAMR) 434 clean: $(CLEANAMR)
430 rm -f *.o *.d *~ .depend $(LIB) $(SLIB) *.so i386/*.o i386/*~ \ 435 rm -f *.o *.d *~ .depend $(LIB) $(SLIBNAME) *$(SLIBSUF) i386/*.o i386/*~ \
431 armv4l/*.o armv4l/*~ \ 436 armv4l/*.o armv4l/*~ \
432 mlib/*.o mlib/*~ \ 437 mlib/*.o mlib/*~ \
433 alpha/*.o alpha/*~ \ 438 alpha/*.o alpha/*~ \
434 ppc/*.o ppc/*~ \ 439 ppc/*.o ppc/*~ \
435 ps2/*.o ps2/*~ \ 440 ps2/*.o ps2/*~ \
474 $(CC) -o $@ $^ $(LIBAVUTIL) -lm 479 $(CC) -o $@ $^ $(LIBAVUTIL) -lm
475 480
476 ifeq ($(BUILD_SHARED),yes) 481 ifeq ($(BUILD_SHARED),yes)
477 install: all install-headers 482 install: all install-headers
478 ifeq ($(CONFIG_WIN32),yes) 483 ifeq ($(CONFIG_WIN32),yes)
479 install $(INSTALLSTRIP) -m 755 $(SLIB) "$(prefix)" 484 install $(INSTALLSTRIP) -m 755 $(SLIBNAME) "$(prefix)"
480 else 485 else
481 install -d $(libdir) 486 install -d $(libdir)
482 install $(INSTALLSTRIP) -m 755 $(SLIB) $(libdir)/libavcodec-$(VERSION).so 487 install $(INSTALLSTRIP) -m 755 $(SLIBNAME) $(libdir)/libavcodec-$(VERSION)$(SLIBSUF)
483 ln -sf libavcodec-$(VERSION).so $(libdir)/libavcodec.so 488 ln -sf libavcodec-$(VERSION)$(SLIBSUF) $(libdir)/libavcodec$(SLIBSUF)
484 $(LDCONFIG) || true 489 $(LDCONFIG) || true
485 endif 490 endif
486 ifeq ($(CONFIG_PP),yes) 491 ifeq ($(CONFIG_PP),yes)
487 $(MAKE) -C libpostproc $@ 492 $(MAKE) -C libpostproc $@
488 endif 493 endif