summaryrefslogtreecommitdiff
path: root/libs/evoral
diff options
context:
space:
mode:
Diffstat (limited to 'libs/evoral')
-rw-r--r--libs/evoral/evoral/visibility.h35
-rw-r--r--libs/evoral/src/libsmf/smf.c12
-rw-r--r--libs/evoral/src/libsmf/smf_decode.c2
-rw-r--r--libs/evoral/src/libsmf/smf_load.c12
-rw-r--r--libs/evoral/src/libsmf/smf_private.h1
-rw-r--r--libs/evoral/src/libsmf/smf_save.c4
-rw-r--r--libs/evoral/src/libsmf/smf_tempo.c6
-rw-r--r--libs/evoral/wscript4
8 files changed, 39 insertions, 37 deletions
diff --git a/libs/evoral/evoral/visibility.h b/libs/evoral/evoral/visibility.h
index 380caca2fd..fc6d23a401 100644
--- a/libs/evoral/evoral/visibility.h
+++ b/libs/evoral/evoral/visibility.h
@@ -20,37 +20,26 @@
#ifndef __libevoral_visibility_h__
#define __libevoral_visibility_h__
-/* _WIN32 is defined by most compilers targetting Windows, but within the
- * evoral source tree, we also define COMPILER_MSVC or COMPILER_MINGW depending
- * on how a Windows build is built.
- */
-
-#if defined _WIN32 || defined __CYGWIN__ || defined(COMPILER_MSVC) || defined(COMPILER_MINGW)
+#if defined(COMPILER_MSVC)
#define LIBEVORAL_DLL_IMPORT __declspec(dllimport)
#define LIBEVORAL_DLL_EXPORT __declspec(dllexport)
#define LIBEVORAL_DLL_LOCAL
#else
- #if __GNUC__ >= 4
- #define LIBEVORAL_DLL_IMPORT __attribute__ ((visibility ("default")))
- #define LIBEVORAL_DLL_EXPORT __attribute__ ((visibility ("default")))
- #define LIBEVORAL_DLL_LOCAL __attribute__ ((visibility ("hidden")))
- #else
- #define LIBEVORAL_DLL_IMPORT
- #define LIBEVORAL_DLL_EXPORT
- #define LIBEVORAL_DLL_LOCAL
- #endif
+ #define LIBEVORAL_DLL_IMPORT __attribute__ ((visibility ("default")))
+ #define LIBEVORAL_DLL_EXPORT __attribute__ ((visibility ("default")))
+ #define LIBEVORAL_DLL_LOCAL __attribute__ ((visibility ("hidden")))
#endif
-#ifdef LIBEVORAL_DLL // libevoral is a DLL
-#ifdef LIBEVORAL_DLL_EXPORTS // defined if we are building the libevoral DLL (instead of using it)
- #define LIBEVORAL_API LIBEVORAL_DLL_EXPORT
+#ifdef LIBEVORAL_STATIC // libevoral is not a DLL
+ #define LIBEVORAL_API
+ #define LIBEVORAL_LOCAL
#else
+ #ifdef LIBEVORAL_DLL_EXPORTS // defined if we are building the libevoral DLL (instead of using it)
+ #define LIBEVORAL_API LIBEVORAL_DLL_EXPORT
+ #else
#define LIBEVORAL_API LIBEVORAL_DLL_IMPORT
-#endif
-#define LIBEVORAL_LOCAL LIBEVORAL_DLL_LOCAL
-#else /* static lib, not DLL */
-#define LIBEVORAL_API
-#define LIBEVORAL_LOCAL
+ #endif
+ #define LIBEVORAL_LOCAL LIBEVORAL_DLL_LOCAL
#endif
#endif /* __libevoral_visibility_h__ */
diff --git a/libs/evoral/src/libsmf/smf.c b/libs/evoral/src/libsmf/smf.c
index ba805e0b04..3fde1d831e 100644
--- a/libs/evoral/src/libsmf/smf.c
+++ b/libs/evoral/src/libsmf/smf.c
@@ -155,7 +155,9 @@ smf_track_delete(smf_track_t *track)
void
smf_add_track(smf_t *smf, smf_track_t *track)
{
+#ifndef NDEBUG
int cantfail;
+#endif
assert(track->smf == NULL);
@@ -166,8 +168,13 @@ smf_add_track(smf_t *smf, smf_track_t *track)
track->track_number = smf->number_of_tracks;
if (smf->number_of_tracks > 1) {
+#ifndef NDEBUG
cantfail = smf_set_format(smf, 1);
assert(!cantfail);
+#else
+ smf_set_format(smf, 1);
+#endif
+
}
}
@@ -864,9 +871,8 @@ smf_get_next_event(smf_t *smf)
void
smf_skip_next_event(smf_t *smf)
{
- void *notused;
-
- notused = smf_get_next_event(smf);
+ smf_event_t *ignored = smf_get_next_event(smf);
+ (void) ignored;
}
/**
diff --git a/libs/evoral/src/libsmf/smf_decode.c b/libs/evoral/src/libsmf/smf_decode.c
index 7a64a15d0d..8037fd80d2 100644
--- a/libs/evoral/src/libsmf/smf_decode.c
+++ b/libs/evoral/src/libsmf/smf_decode.c
@@ -494,7 +494,7 @@ static void
note_from_int(char *buf, int note_number)
{
int note, octave;
- char *names[] = {"C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"};
+ const char *names[] = {"C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"};
octave = note_number / 12 - 1;
note = note_number % 12;
diff --git a/libs/evoral/src/libsmf/smf_load.c b/libs/evoral/src/libsmf/smf_load.c
index fed4d28bb7..d8168d0e6a 100644
--- a/libs/evoral/src/libsmf/smf_load.c
+++ b/libs/evoral/src/libsmf/smf_load.c
@@ -282,7 +282,11 @@ expected_sysex_length(const unsigned char status, const unsigned char *second_by
uint32_t sysex_length = 0;
uint32_t len = 0;
+#ifndef NDEBUG
+ (void) status;
+#else
assert(status == 0xF0);
+#endif
if (buffer_length < 3) {
g_critical("SMF error: end of buffer in expected_sysex_length().");
@@ -545,7 +549,7 @@ extract_midi_event(const unsigned char *buf, const size_t buffer_length, smf_eve
static smf_event_t *
parse_next_event(smf_track_t *track)
{
- uint32_t time = 0;
+ uint32_t etime = 0;
uint32_t len;
size_t buffer_length;
unsigned char *c, *start;
@@ -564,7 +568,7 @@ parse_next_event(smf_track_t *track)
assert(buffer_length > 0);
/* First, extract time offset from previous event. */
- if (smf_extract_vlq(c, buffer_length, &time, &len))
+ if (smf_extract_vlq(c, buffer_length, &etime, &len))
goto error;
c += len;
@@ -582,7 +586,7 @@ parse_next_event(smf_track_t *track)
track->last_status = event->midi_buffer[0];
track->next_event_offset += c - start;
- smf_track_add_event_delta_pulses(track, event, time);
+ smf_track_add_event_delta_pulses(track, event, etime);
return (event);
@@ -637,7 +641,7 @@ smf_event_is_textual(const smf_event_t *event)
if (event->midi_buffer_length < 4)
return (0);
- if (event->midi_buffer[3] < 1 && event->midi_buffer[3] > 9)
+ if (event->midi_buffer[3] < 1 || event->midi_buffer[3] > 9)
return (0);
return (1);
diff --git a/libs/evoral/src/libsmf/smf_private.h b/libs/evoral/src/libsmf/smf_private.h
index 537a29b889..f415eac9da 100644
--- a/libs/evoral/src/libsmf/smf_private.h
+++ b/libs/evoral/src/libsmf/smf_private.h
@@ -75,6 +75,7 @@ void remove_last_tempo_with_pulses(smf_t *smf, size_t pulses);
int smf_event_is_tempo_change_or_time_signature(const smf_event_t *event) WARN_UNUSED_RESULT;
int smf_event_length_is_valid(const smf_event_t *event) WARN_UNUSED_RESULT;
int is_status_byte(const unsigned char status) WARN_UNUSED_RESULT;
+smf_track_t* smf_find_track_with_next_event (smf_t *smf);
#endif /* SMF_PRIVATE_H */
diff --git a/libs/evoral/src/libsmf/smf_save.c b/libs/evoral/src/libsmf/smf_save.c
index 3b313cff5a..120c3a95eb 100644
--- a/libs/evoral/src/libsmf/smf_save.c
+++ b/libs/evoral/src/libsmf/smf_save.c
@@ -219,7 +219,11 @@ smf_event_new_textual(int type, const char *text)
vlq_length = smf_format_vlq(event->midi_buffer + 2, MAX_VLQ_LENGTH - 2, text_length);
copied_length = snprintf((char *)event->midi_buffer + vlq_length + 2, event->midi_buffer_length - vlq_length - 2, "%s", text);
+#ifndef NDEBUG
+ (void) copied_length; /* stop gcc warning about unusued vars for non-debug build */
+#else
assert(copied_length == text_length);
+#endif
event->midi_buffer_length = 2 + vlq_length + text_length;
diff --git a/libs/evoral/src/libsmf/smf_tempo.c b/libs/evoral/src/libsmf/smf_tempo.c
index 6620cd405c..f3e3f7fc1b 100644
--- a/libs/evoral/src/libsmf/smf_tempo.c
+++ b/libs/evoral/src/libsmf/smf_tempo.c
@@ -133,13 +133,13 @@ maybe_add_to_tempo_map(smf_event_t *event)
/* Tempo Change? */
if (event->midi_buffer[1] == 0x51) {
- int new_tempo = (event->midi_buffer[3] << 16) + (event->midi_buffer[4] << 8) + event->midi_buffer[5];
- if (new_tempo <= 0) {
+ int ntempo = (event->midi_buffer[3] << 16) + (event->midi_buffer[4] << 8) + event->midi_buffer[5];
+ if (ntempo <= 0) {
g_critical("Ignoring invalid tempo change.");
return;
}
- add_tempo(event->track->smf, event->time_pulses, new_tempo);
+ add_tempo(event->track->smf, event->time_pulses, ntempo);
}
/* Time Signature? */
diff --git a/libs/evoral/wscript b/libs/evoral/wscript
index 569aa0fc6b..30b20f2cbd 100644
--- a/libs/evoral/wscript
+++ b/libs/evoral/wscript
@@ -91,9 +91,7 @@ def build(bld):
if bld.is_defined ('INTERNAL_SHARED_LIBS'):
obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=lib_source)
# DLL exports for this library
- obj.defines = [ 'LIBEVORAL_DLL=1', 'LIBEVORAL_DLL_EXPORTS=1' ]
- # DLL imports for other libraries
- obj.defines += [ 'LIBPBD_DLL=1' ]
+ obj.defines = [ 'LIBEVORAL_DLL_EXPORTS=1' ]
obj.cxxflags = [ '-fvisibility=hidden' ]
obj.cflags = [ '-fvisibility=hidden' ]
else: