Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
jami-daemon
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Deploy
Releases
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
savoirfairelinux
jami-daemon
Commits
f75b3711
Commit
f75b3711
authored
16 years ago
by
Emmanuel Milou
Browse files
Options
Downloads
Patches
Plain Diff
Add one last(?) missing makefile
parent
248b5eed
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
libs/pjproject-1.0.1/third_party/gsm/Makefile
+494
-0
494 additions, 0 deletions
libs/pjproject-1.0.1/third_party/gsm/Makefile
with
494 additions
and
0 deletions
libs/pjproject-1.0.1/third_party/gsm/Makefile
0 → 100644
+
494
−
0
View file @
f75b3711
# Copyright 1992-1996 by Jutta Degener and Carsten Bormann, Technische
# Universitaet Berlin. See the accompanying file "COPYRIGHT" for
# details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
# Machine- or installation dependent flags you should configure to port
SASR
=
-DSASR
######### Define SASR if >> is a signed arithmetic shift (-1 >> 1 == -1)
# MULHACK = -DUSE_FLOAT_MUL
######### Define this if your host multiplies floats faster than integers,
######### e.g. on a SPARCstation.
# FAST = -DFAST
######### Define together with USE_FLOAT_MUL to enable the GSM library's
######### approximation option for incorrect, but good-enough results.
# LTP_CUT = -DLTP_CUT
LTP_CUT
=
######### Define to enable the GSM library's long-term correlation
######### approximation option---faster, but worse; works for
######### both integer and floating point multiplications.
######### This flag is still in the experimental stage.
WAV49
=
-DWAV49
# WAV49 =
######### Define to enable the GSM library's option to pack GSM frames
######### in the style used by the WAV #49 format. If you want to write
######### a tool that produces .WAV files which contain GSM-encoded data,
######### define this, and read about the GSM_OPT_WAV49 option in the
######### manual page on gsm_option(3).
# Choose a compiler. The code works both with ANSI and K&R-C.
# Use -DNeedFunctionPrototypes to compile with, -UNeedFunctionPrototypes to
# compile without, function prototypes in the header files.
#
# You can use the -DSTUPID_COMPILER to circumvent some compilers'
# static limits regarding the number of subexpressions in a statement.
# CC = cc
# CCFLAGS = -c -DSTUPID_COMPILER
# CC = /usr/lang/acc
# CCFLAGS = -c -O
CC
=
gcc
-ansi
-pedantic
CCFLAGS
=
-c
-O2
-DNeedFunctionPrototypes
=
1
LD
=
$(
CC
)
# LD = gcc
# LDFLAGS =
# If your compiler needs additional flags/libraries, regardless of
# the source compiled, configure them here.
# CCINC = -I/usr/gnu/lib/gcc-2.1/gcc-lib/sparc-sun-sunos4.1.2/2.1/include
######### Includes needed by $(CC)
# LDINC = -L/usr/gnu/lib/gcc-2.1/gcc-lib/sparc-sun-sunos4.1.2/2.1
######### Library paths needed by $(LD)
# LDLIB = -lgcc
######### Additional libraries needed by $(LD)
# Where do you want to install libraries, binaries, a header file
# and the manual pages?
#
# Leave INSTALL_ROOT empty (or just don't execute "make install") to
# not install gsm and toast outside of this directory.
INSTALL_ROOT
=
# Where do you want to install the gsm library, header file, and manpages?
#
# Leave GSM_INSTALL_ROOT empty to not install the GSM library outside of
# this directory.
GSM_INSTALL_ROOT
=
$(
INSTALL_ROOT
)
GSM_INSTALL_LIB
=
$(
GSM_INSTALL_ROOT
)
/lib
GSM_INSTALL_INC
=
$(
GSM_INSTALL_ROOT
)
/inc
GSM_INSTALL_MAN
=
$(
GSM_INSTALL_ROOT
)
/man/man3
# Where do you want to install the toast binaries and their manpage?
#
# Leave TOAST_INSTALL_ROOT empty to not install the toast binaries outside
# of this directory.
TOAST_INSTALL_ROOT
=
$(
INSTALL_ROOT
)
TOAST_INSTALL_BIN
=
$(
TOAST_INSTALL_ROOT
)
/bin
TOAST_INSTALL_MAN
=
$(
TOAST_INSTALL_ROOT
)
/man/man1
# Other tools
SHELL
=
/bin/sh
LN
=
ln
BASENAME
=
basename
AR
=
ar
ARFLAGS
=
cr
RMFLAGS
=
FIND
=
find
COMPRESS
=
compress
COMPRESSFLAGS
=
# RANLIB = true
RANLIB
=
ranlib
#
# You shouldn't have to configure below this line if you're porting.
#
# Local Directories
ROOT
=
.
ADDTST
=
$(
ROOT
)
/add-test
TST
=
$(
ROOT
)
/tst
MAN
=
$(
ROOT
)
/man
BIN
=
$(
ROOT
)
/bin
SRC
=
$(
ROOT
)
/src
LIB
=
$(
ROOT
)
/lib
TLS
=
$(
ROOT
)
/tls
INC
=
$(
ROOT
)
/inc
# Flags
# DEBUG = -DNDEBUG
######### Remove -DNDEBUG to enable assertions.
CFLAGS
=
$(
CCFLAGS
)
$(
SASR
)
$(
DEBUG
)
$(
MULHACK
)
$(
FAST
)
$(
LTP_CUT
)
\
$(
WAV49
)
$(
CCINC
)
-I
$(
INC
)
######### It's $(CC) $(CFLAGS)
LFLAGS
=
$(
LDFLAGS
)
$(
LDINC
)
######### It's $(LD) $(LFLAGS)
# Targets
LIBGSM
=
$(
LIB
)
/libgsm.a
TOAST
=
$(
BIN
)
/toast
UNTOAST
=
$(
BIN
)
/untoast
TCAT
=
$(
BIN
)
/tcat
# Headers
GSM_HEADERS
=
$(
INC
)
/gsm.h
HEADERS
=
$(
INC
)
/proto.h
\
$(
INC
)
/unproto.h
\
$(
INC
)
/config.h
\
$(
INC
)
/private.h
\
$(
INC
)
/gsm.h
\
$(
INC
)
/toast.h
\
$(
TLS
)
/taste.h
# Sources
GSM_SOURCES
=
$(
SRC
)
/add.c
\
$(
SRC
)
/code.c
\
$(
SRC
)
/debug.c
\
$(
SRC
)
/decode.c
\
$(
SRC
)
/long_term.c
\
$(
SRC
)
/lpc.c
\
$(
SRC
)
/preprocess.c
\
$(
SRC
)
/rpe.c
\
$(
SRC
)
/gsm_destroy.c
\
$(
SRC
)
/gsm_decode.c
\
$(
SRC
)
/gsm_encode.c
\
$(
SRC
)
/gsm_explode.c
\
$(
SRC
)
/gsm_implode.c
\
$(
SRC
)
/gsm_create.c
\
$(
SRC
)
/gsm_print.c
\
$(
SRC
)
/gsm_option.c
\
$(
SRC
)
/short_term.c
\
$(
SRC
)
/table.c
TOAST_SOURCES
=
$(
SRC
)
/toast.c
\
$(
SRC
)
/toast_lin.c
\
$(
SRC
)
/toast_ulaw.c
\
$(
SRC
)
/toast_alaw.c
\
$(
SRC
)
/toast_audio.c
SOURCES
=
$(
GSM_SOURCES
)
\
$(
TOAST_SOURCES
)
\
$(
ADDTST
)
/add_test.c
\
$(
TLS
)
/sour.c
\
$(
TLS
)
/ginger.c
\
$(
TLS
)
/sour1.dta
\
$(
TLS
)
/sour2.dta
\
$(
TLS
)
/bitter.c
\
$(
TLS
)
/bitter.dta
\
$(
TLS
)
/taste.c
\
$(
TLS
)
/sweet.c
\
$(
TST
)
/cod2lin.c
\
$(
TST
)
/cod2txt.c
\
$(
TST
)
/gsm2cod.c
\
$(
TST
)
/lin2cod.c
\
$(
TST
)
/lin2txt.c
# Object files
GSM_OBJECTS
=
$(
SRC
)
/add.o
\
$(
SRC
)
/code.o
\
$(
SRC
)
/debug.o
\
$(
SRC
)
/decode.o
\
$(
SRC
)
/long_term.o
\
$(
SRC
)
/lpc.o
\
$(
SRC
)
/preprocess.o
\
$(
SRC
)
/rpe.o
\
$(
SRC
)
/gsm_destroy.o
\
$(
SRC
)
/gsm_decode.o
\
$(
SRC
)
/gsm_encode.o
\
$(
SRC
)
/gsm_explode.o
\
$(
SRC
)
/gsm_implode.o
\
$(
SRC
)
/gsm_create.o
\
$(
SRC
)
/gsm_print.o
\
$(
SRC
)
/gsm_option.o
\
$(
SRC
)
/short_term.o
\
$(
SRC
)
/table.o
TOAST_OBJECTS
=
$(
SRC
)
/toast.o
\
$(
SRC
)
/toast_lin.o
\
$(
SRC
)
/toast_ulaw.o
\
$(
SRC
)
/toast_alaw.o
\
$(
SRC
)
/toast_audio.o
OBJECTS
=
$(
GSM_OBJECTS
)
$(
TOAST_OBJECTS
)
# Manuals
GSM_MANUALS
=
$(
MAN
)
/gsm.3
\
$(
MAN
)
/gsm_explode.3
\
$(
MAN
)
/gsm_option.3
\
$(
MAN
)
/gsm_print.3
TOAST_MANUALS
=
$(
MAN
)
/toast.1
MANUALS
=
$(
GSM_MANUALS
)
$(
TOAST_MANUALS
)
$(
MAN
)
/bitter.1
# Other stuff in the distribution
STUFF
=
ChangeLog
\
INSTALL
\
MACHINES
\
MANIFEST
\
Makefile
\
README
\
$(
ADDTST
)
/add_test.dta
\
$(
TLS
)
/bitter.dta
\
$(
TST
)
/run
# Install targets
GSM_INSTALL_TARGETS
=
\
$(
GSM_INSTALL_LIB
)
/libgsm.a
\
$(
GSM_INSTALL_INC
)
/gsm.h
\
$(
GSM_INSTALL_MAN
)
/gsm.3
\
$(
GSM_INSTALL_MAN
)
/gsm_explode.3
\
$(
GSM_INSTALL_MAN
)
/gsm_option.3
\
$(
GSM_INSTALL_MAN
)
/gsm_print.3
TOAST_INSTALL_TARGETS
=
\
$(
TOAST_INSTALL_BIN
)
/toast
\
$(
TOAST_INSTALL_BIN
)
/tcat
\
$(
TOAST_INSTALL_BIN
)
/untoast
\
$(
TOAST_INSTALL_MAN
)
/toast.1
# Default rules
.c.o
:
$(
CC
)
$(
CFLAGS
)
$?
@
-mv
`
$(
BASENAME
)
$@
`
$@
>
/dev/null 2>&1
# Target rules
all
:
$(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
@
-echo
$(
ROOT
)
: Done.
tst
:
$(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
@
-echo
tst: Done.
addtst
:
$(ADDTST)/add $(ADDTST)/add_test.dta
$(
ADDTST
)
/add <
$(
ADDTST
)
/add_test.dta
>
/dev/null
@
-echo
addtst: Done.
misc
:
$(TLS)/sweet $(TLS)/bitter $(TLS)/sour $(TLS)/ginger
\
$(TST)/lin2txt $(TST)/cod2txt $(TST)/gsm2cod
@
-echo
misc: Done.
install
:
toastinstall gsminstall
@
-echo
install
: Done.
# The basic API: libgsm
$(LIBGSM)
:
$(LIB) $(GSM_OBJECTS)
-
rm
$(
RMFLAGS
)
$(
LIBGSM
)
$(
AR
)
$(
ARFLAGS
)
$(
LIBGSM
)
$(
GSM_OBJECTS
)
$(
RANLIB
)
$(
LIBGSM
)
# Toast, Untoast and Tcat -- the compress-like frontends to gsm.
$(TOAST)
:
$(BIN) $(TOAST_OBJECTS) $(LIBGSM)
$(
LD
)
$(
LFLAGS
)
-o
$(
TOAST
)
$(
TOAST_OBJECTS
)
$(
LIBGSM
)
$(
LDLIB
)
$(UNTOAST)
:
$(BIN) $(TOAST)
-
rm
$(
RMFLAGS
)
$(
UNTOAST
)
$(
LN
)
$(
TOAST
)
$(
UNTOAST
)
$(TCAT)
:
$(BIN) $(TOAST)
-
rm
$(
RMFLAGS
)
$(
TCAT
)
$(
LN
)
$(
TOAST
)
$(
TCAT
)
# The local bin and lib directories
$(BIN)
:
if
[
!
-d
$(
BIN
)
]
;
then
mkdir
$(
BIN
)
;
fi
$(LIB)
:
if
[
!
-d
$(
LIB
)
]
;
then
mkdir
$(
LIB
)
;
fi
# Installation
gsminstall
:
-
if
[
x
"
$(
GSM_INSTALL_ROOT
)
"
!=
x
]
;
then
\
make
$(
GSM_INSTALL_TARGETS
)
;
\
fi
toastinstall
:
-
if
[
x
"
$(
TOAST_INSTALL_ROOT
)
"
!=
x
]
;
then
\
make
$(
TOAST_INSTALL_TARGETS
);
\
fi
gsmuninstall
:
-
if
[
x
"
$(
GSM_INSTALL_ROOT
)
"
!=
x
]
;
then
\
rm
$(
RMFLAGS
)
$(
GSM_INSTALL_TARGETS
)
;
\
fi
toastuninstall
:
-
if
[
x
"
$(
TOAST_INSTALL_ROOT
)
"
!=
x
]
;
then
\
rm
$(
RMFLAGS
)
$(
TOAST_INSTALL_TARGETS
);
\
fi
$(TOAST_INSTALL_BIN)/toast
:
$(TOAST)
-
rm
$@
cp
$(
TOAST
)
$@
chmod
755
$@
$(TOAST_INSTALL_BIN)/untoast
:
$(TOAST_INSTALL_BIN)/toast
-
rm
$@
ln
$?
$@
$(TOAST_INSTALL_BIN)/tcat
:
$(TOAST_INSTALL_BIN)/toast
-
rm
$@
ln
$?
$@
$(TOAST_INSTALL_MAN)/toast.1
:
$(MAN)/toast.1
-
rm
$@
cp
$?
$@
chmod
444
$@
$(GSM_INSTALL_MAN)/gsm.3
:
$(MAN)/gsm.3
-
rm
$@
cp
$?
$@
chmod
444
$@
$(GSM_INSTALL_MAN)/gsm_option.3
:
$(MAN)/gsm_option.3
-
rm
$@
cp
$?
$@
chmod
444
$@
$(GSM_INSTALL_MAN)/gsm_explode.3
:
$(MAN)/gsm_explode.3
-
rm
$@
cp
$?
$@
chmod
444
$@
$(GSM_INSTALL_MAN)/gsm_print.3
:
$(MAN)/gsm_print.3
-
rm
$@
cp
$?
$@
chmod
444
$@
$(GSM_INSTALL_INC)/gsm.h
:
$(INC)/gsm.h
-
rm
$@
cp
$?
$@
chmod
444
$@
$(GSM_INSTALL_LIB)/libgsm.a
:
$(LIBGSM)
-
rm
$@
cp
$?
$@
chmod
444
$@
# Distribution
dist
:
gsm-1.0.tar.Z
@
echo
dist: Done.
gsm-1.0.tar.Z
:
$(STUFF) $(SOURCES) $(HEADERS) $(MANUALS)
(
cd
$(
ROOT
)
/..
;
\
tar
cvf -
`
cat
$(
ROOT
)
/gsm-1.0/MANIFEST
\
|
sed
'/^#/d'
`
\
)
|
$(
COMPRESS
)
$(
COMPRESSFLAGS
)
>
$(
ROOT
)
/gsm-1.0.tar.Z
# Clean
uninstall
:
toastuninstall gsmuninstall
@
-echo
uninstall: Done.
semi-clean
:
-
rm
$(
RMFLAGS
)
*
/
*
.o
\
$(
TST
)
/lin2cod
$(
TST
)
/lin2txt
\
$(
TST
)
/cod2lin
$(
TST
)
/cod2txt
\
$(
TST
)
/gsm2cod
\
$(
TST
)
/
*
.
*
.
*
-$(
FIND
)
.
\(
-name
core
-o
-name
foo
\)
\
-print
| xargs
rm
$(
RMFLAGS
)
clean
:
semi-clean
-
rm
$(
RMFLAGS
)
$(
LIBGSM
)
$(
ADDTST
)
/add
\
$(
TOAST
)
$(
TCAT
)
$(
UNTOAST
)
\
$(
ROOT
)
/gsm-1.0.tar.Z
# Two tools that helped me generate gsm_encode.c and gsm_decode.c,
# but aren't generally needed to port this.
$(TLS)/sweet
:
$(TLS)/sweet.o $(TLS)/taste.o
$(
LD
)
$(
LFLAGS
)
-o
$(
TLS
)
/sweet
\
$(
TLS
)
/sweet.o
$(
TLS
)
/taste.o
$(
LDLIB
)
$(TLS)/bitter
:
$(TLS)/bitter.o $(TLS)/taste.o
$(
LD
)
$(
LFLAGS
)
-o
$(
TLS
)
/bitter
\
$(
TLS
)
/bitter.o
$(
TLS
)
/taste.o
$(
LDLIB
)
# A version of the same family that Jeff Chilton used to implement
# the WAV #49 GSM format.
$(TLS)/ginger
:
$(TLS)/ginger.o $(TLS)/taste.o
$(
LD
)
$(
LFLAGS
)
-o
$(
TLS
)
/ginger
\
$(
TLS
)
/ginger.o
$(
TLS
)
/taste.o
$(
LDLIB
)
$(TLS)/sour
:
$(TLS)/sour.o $(TLS)/taste.o
$(
LD
)
$(
LFLAGS
)
-o
$(
TLS
)
/sour
\
$(
TLS
)
/sour.o
$(
TLS
)
/taste.o
$(
LDLIB
)
# Run $(ADDTST)/add < $(ADDTST)/add_test.dta to make sure the
# basic arithmetic functions work as intended.
$(ADDTST)/add
:
$(ADDTST)/add_test.o
$(
LD
)
$(
LFLAGS
)
-o
$(
ADDTST
)
/add
$(
ADDTST
)
/add_test.o
$(
LDLIB
)
# Various conversion programs between linear, text, .gsm and the code
# format used by the tests we ran (.cod). We paid for the test data,
# so I guess we can't just provide them with this package. Still,
# if you happen to have them lying around, here's the code.
#
# You can use gsm2cod | cod2txt independently to look at what's
# coded inside the compressed frames, although this shouldn't be
# hard to roll on your own using the gsm_print() function from
# the API.
$(TST)/test-result
:
$(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/run
(
cd
$(
TST
);
./run
)
$(TST)/lin2txt
:
$(TST)/lin2txt.o $(LIBGSM)
$(
LD
)
$(
LFLAGS
)
-o
$(
TST
)
/lin2txt
\
$(
TST
)
/lin2txt.o
$(
LIBGSM
)
$(
LDLIB
)
$(TST)/lin2cod
:
$(TST)/lin2cod.o $(LIBGSM)
$(
LD
)
$(
LFLAGS
)
-o
$(
TST
)
/lin2cod
\
$(
TST
)
/lin2cod.o
$(
LIBGSM
)
$(
LDLIB
)
$(TST)/gsm2cod
:
$(TST)/gsm2cod.o $(LIBGSM)
$(
LD
)
$(
LFLAGS
)
-o
$(
TST
)
/gsm2cod
\
$(
TST
)
/gsm2cod.o
$(
LIBGSM
)
$(
LDLIB
)
$(TST)/cod2txt
:
$(TST)/cod2txt.o $(LIBGSM)
$(
LD
)
$(
LFLAGS
)
-o
$(
TST
)
/cod2txt
\
$(
TST
)
/cod2txt.o
$(
LIBGSM
)
$(
LDLIB
)
$(TST)/cod2lin
:
$(TST)/cod2lin.o $(LIBGSM)
$(
LD
)
$(
LFLAGS
)
-o
$(
TST
)
/cod2lin
\
$(
TST
)
/cod2lin.o
$(
LIBGSM
)
$(
LDLIB
)
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment