nomadbyte / bristol-fixes

Unofficial fixes and extensions for Bristol synth emulation package by Nick Copeland: https://sourceforge.net/projects/bristol (hopefully, some could be integrated into the project)
Other
11 stars 4 forks source link

Various fixes #22

Open jpcima opened 3 years ago

jpcima commented 3 years ago

This PR contains fixes to a variety of problems.

First off, building on a current Linux system, there are many linking errors of the type "multiple definitions". As one example, the variable float note_diff is defined in multiple sources, without the static keyword, although the use of this variable is file-local.

I went through the global variables and applied the fixes as I found appropriate.

Moreover, I've tagged global variables with a tag GLOBAL_STATE, if this is OK. It's in order to help future efforts of porting Bristol to plugins, where the global state is a problem and it must be eventually rewritten in a more appropriate manner.

Also, const keywords where possible, fixes of bash errors, etc.

hfiguiere commented 1 year ago

to fix the problem with globals, I just added this to the configure.ac after AC_SUBST(BRISTOL_HAS_OSS)

# Newer gcc require this to build
CFLAGS="$CFLAGS -fcommon"

-fno-common has become default.