Radix cross Linux

The main Radix cross Linux repository contains the build scripts of packages, which have the most complete and common functionality for desktop machines

452 Commits   2 Branches   1 Tag
     5         kx VERSION = 0.2.0
     5         kx 
     5         kx API_MAJOR = 0
     5         kx API_MINOR = 1
     5         kx API_PATCH = 0
     5         kx 
     5         kx CFLAGS += -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wall -Wextra -O2 -ffast-math -g -MMD
     5         kx 
     5         kx PREFIX ?= /usr/local
     5         kx BINDIR ?= $(PREFIX)/bin
     5         kx LIBDIR ?= $(PREFIX)/lib
     5         kx INCLUDEDIR ?= $(PREFIX)/include
     5         kx 
     5         kx SRC_DIR := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
     5         kx vpath %.c $(SRC_DIR)
     5         kx vpath %.h $(SRC_DIR)
     5         kx vpath %.pc.in $(SRC_DIR)
     5         kx 
     5         kx -include .config
     5         kx 
     5         kx ifdef CONFIG_DEBUG
     5         kx     CFLAGS += -D_DEBUG
     5         kx else
     5         kx     CFLAGS += -DNDEBUG
     5         kx endif
     5         kx 
     5         kx ifdef CONFIG_WINDOWS
     5         kx     EXESUF ?= .exe
     5         kx     DLLSUF ?= .dll
     5         kx     LIBSUF ?= .a
     5         kx else
     5         kx     DLLSUF ?= .so
     5         kx     LIBSUF ?= .a
     5         kx     LIBS ?= -lm
     5         kx     ifdef CONFIG_SHARED
     5         kx         SONAMESUF ?= .$(API_MAJOR).$(API_MINOR).$(API_PATCH)
     5         kx         SONAMESUF_MAJOR ?= .$(API_MAJOR)
     5         kx         SONAME ?= libdcadec$(DLLSUF)$(SONAMESUF_MAJOR)
     5         kx     endif
     5         kx endif
     5         kx 
     5         kx ifdef CONFIG_SHARED
     5         kx     OUT_LIB ?= libdcadec/libdcadec$(DLLSUF)$(SONAMESUF)
     5         kx else
     5         kx     OUT_LIB ?= libdcadec/libdcadec$(LIBSUF)
     5         kx endif
     5         kx 
     5         kx OUT_DEC ?= dcadec$(EXESUF)
     5         kx OUT_CUT ?= dcacut$(EXESUF)
     5         kx 
     5         kx OUT_DEV ?= test/stddev$(EXESUF)
     5         kx SRC_DEV ?= test/stddev.c
     5         kx CFLAGS_DEV ?= -O2 -Wall -Wextra
     5         kx 
     5         kx SRC_LIB = \
     5         kx libdcadec/bitstream.c \
     5         kx libdcadec/core_decoder.c \
     5         kx libdcadec/dca_context.c \
     5         kx libdcadec/dmix_tables.c \
     5         kx libdcadec/exss_parser.c \
     5         kx libdcadec/idct_fixed.c \
     5         kx libdcadec/idct_float.c \
     5         kx libdcadec/interpolator.c \
     5         kx libdcadec/interpolator_fixed.c \
     5         kx libdcadec/interpolator_float.c \
     5         kx libdcadec/ta.c \
     5         kx libdcadec/xll_decoder.c
     5         kx INC_LIB = \
     5         kx libdcadec/dca_context.h
     5         kx 
     5         kx ifndef CONFIG_SMALL
     5         kx SRC_LIB += libdcadec/dca_frame.c
     5         kx SRC_LIB += libdcadec/dca_stream.c
     5         kx SRC_LIB += libdcadec/dca_waveout.c
     5         kx INC_LIB += libdcadec/dca_frame.h
     5         kx INC_LIB += libdcadec/dca_stream.h
     5         kx INC_LIB += libdcadec/dca_waveout.h
     5         kx endif
     5         kx 
     5         kx OBJ_LIB = $(SRC_LIB:.c=.o)
     5         kx DEP_LIB = $(SRC_LIB:.c=.d)
     5         kx 
     5         kx SRC_DEC = dcadec.c
     5         kx OBJ_DEC = $(SRC_DEC:.c=.o)
     5         kx DEP_DEC = $(SRC_DEC:.c=.d)
     5         kx 
     5         kx SRC_CUT = dcacut.c
     5         kx OBJ_CUT = $(SRC_CUT:.c=.o)
     5         kx DEP_CUT = $(SRC_CUT:.c=.d)
     5         kx 
     5         kx default: $(OUT_LIB) $(OUT_DEC)
     5         kx 
     5         kx lib: $(OUT_LIB)
     5         kx 
     5         kx all: $(OUT_LIB) $(OUT_DEC) $(OUT_CUT)
     5         kx 
     5         kx -include $(DEP_LIB) $(DEP_DEC) $(DEP_CUT)
     5         kx 
     5         kx $(OBJ_LIB): | objdir
     5         kx $(OBJ_DEC): | objdir
     5         kx $(OBJ_CUT): | objdir
     5         kx 
     5         kx objdir:
     5         kx 	mkdir -p libdcadec
     5         kx 
     5         kx ifdef CONFIG_SHARED
     5         kx     CFLAGS_DLL = $(CFLAGS) -DDCADEC_SHARED -DDCADEC_INTERNAL
     5         kx     LDFLAGS_DLL = $(LDFLAGS) -shared
     5         kx 
     5         kx     ifdef CONFIG_WINDOWS
     5         kx         IMP_LIB = libdcadec/libdcadec$(DLLSUF)$(LIBSUF)
     5         kx         IMP_DEF = libdcadec/libdcadec.def
     5         kx         EXTRA_LIB = $(IMP_LIB) $(IMP_DEF)
     5         kx         LDFLAGS_DLL += -static-libgcc
     5         kx         LDFLAGS_DLL += -Wl,--nxcompat,--dynamicbase
     5         kx         LDFLAGS_DLL += -Wl,--output-def,$(IMP_DEF)
     5         kx         LDFLAGS_DLL += -Wl,--out-implib,$(IMP_LIB)
     5         kx     else
     5         kx         CFLAGS_DLL += -fPIC -fvisibility=hidden
     5         kx         ifdef SONAME
     5         kx             LDFLAGS_DLL += -Wl,-soname,$(SONAME)
     5         kx             EXTRA_LIB += libdcadec/libdcadec$(DLLSUF)
     5         kx             EXTRA_LIB += libdcadec/libdcadec$(DLLSUF)$(SONAMESUF_MAJOR)
     5         kx         endif
     5         kx         IMP_LIB = -Llibdcadec -ldcadec
     5         kx     endif
     5         kx 
     5         kx libdcadec/%.o: libdcadec/%.c
     5         kx 	$(CC) -c $(CFLAGS_DLL) -o $@ $<
     5         kx 
     5         kx $(OUT_LIB): $(OBJ_LIB)
     5         kx 	$(CC) $(LDFLAGS_DLL) -o $@ $(OBJ_LIB) $(LIBS)
     5         kx ifdef SONAME
     5         kx 	ln -sf $(@F) libdcadec/libdcadec$(DLLSUF)
     5         kx 	ln -sf $(@F) libdcadec/libdcadec$(DLLSUF)$(SONAMESUF_MAJOR)
     5         kx endif
     5         kx 
     5         kx $(OUT_DEC): $(OBJ_DEC) $(OUT_LIB)
     5         kx 	$(CC) $(LDFLAGS) -o $@ $(OBJ_DEC) $(IMP_LIB) $(LIBS)
     5         kx 
     5         kx $(OUT_CUT): $(OBJ_CUT) $(OUT_LIB)
     5         kx 	$(CC) $(LDFLAGS) -o $@ $(OBJ_CUT) $(IMP_LIB) $(LIBS)
     5         kx 
     5         kx else
     5         kx 
     5         kx $(OUT_LIB): $(OBJ_LIB)
     5         kx 	$(AR) crsu $@ $(OBJ_LIB)
     5         kx 
     5         kx $(OUT_DEC): $(OBJ_DEC) $(OUT_LIB)
     5         kx 	$(CC) $(LDFLAGS) -o $@ $(OBJ_DEC) $(OUT_LIB) $(LIBS)
     5         kx 
     5         kx $(OUT_CUT): $(OBJ_CUT) $(OUT_LIB)
     5         kx 	$(CC) $(LDFLAGS) -o $@ $(OBJ_CUT) $(OUT_LIB) $(LIBS)
     5         kx 
     5         kx endif
     5         kx 
     5         kx $(OUT_DEV): $(SRC_DEV)
     5         kx 	$(CC) $(LDFLAGS) -o $@ $(CFLAGS_DEV) $< $(LIBS)
     5         kx 
     5         kx check: $(OUT_DEC) $(OUT_DEV)
     5         kx 	cd test && ./test.sh
     5         kx 
     5         kx clean:
     5         kx 	$(RM) $(OUT_LIB) $(OBJ_LIB) $(DEP_LIB) $(EXTRA_LIB)
     5         kx 	$(RM) $(OUT_DEC) $(OBJ_DEC) $(DEP_DEC)
     5         kx 	$(RM) $(OUT_CUT) $(OBJ_CUT) $(DEP_CUT)
     5         kx 	$(RM) dcadec.pc
     5         kx 	$(RM) $(OUT_DEV)
     5         kx 	$(RM) -r test/decoded
     5         kx 
     5         kx .PHONY: dcadec.pc
     5         kx dcadec.pc: dcadec.pc.in
     5         kx 	sed 's,%PREFIX%,$(PREFIX),;s,%LIBDIR%,$(LIBDIR),;s,%INCLUDEDIR%,$(INCLUDEDIR),;s,%VERSION%,$(VERSION),' $< > $@
     5         kx 
     5         kx install-lib: $(OUT_LIB) dcadec.pc
     5         kx 	install -d -m 755 $(DESTDIR)$(LIBDIR) $(DESTDIR)$(LIBDIR)/pkgconfig $(DESTDIR)$(INCLUDEDIR)/libdcadec
     5         kx 	install -m 644 $(OUT_LIB) $(DESTDIR)$(LIBDIR)
     5         kx 	install -m 644 $(addprefix $(SRC_DIR)/, $(INC_LIB)) $(DESTDIR)$(INCLUDEDIR)/libdcadec
     5         kx 	install -m 644 dcadec.pc $(DESTDIR)$(LIBDIR)/pkgconfig
     5         kx ifdef SONAME
     5         kx 	ln -sf libdcadec$(DLLSUF)$(SONAMESUF) $(DESTDIR)$(LIBDIR)/libdcadec$(DLLSUF)
     5         kx 	ln -sf libdcadec$(DLLSUF)$(SONAMESUF) $(DESTDIR)$(LIBDIR)/libdcadec$(DLLSUF)$(SONAMESUF_MAJOR)
     5         kx endif
     5         kx 
     5         kx install-dec: $(OUT_DEC)
     5         kx 	install -d -m 755 $(DESTDIR)$(BINDIR)
     5         kx 	install -m 755 $(OUT_DEC) $(DESTDIR)$(BINDIR)
     5         kx 
     5         kx install: install-lib install-dec