Description: Sort *.o files
 Fix the order in which *.o files are merged to build the shared lib,
 to get reproducible build.
Author: Alexis Bienvenüe <pado@passoire.fr>

--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -90,7 +90,7 @@ $(STATICLIB) : $(OBJECTS)
 
 $(SHAREDLIB) : $(OBJECTS)
 	$(RM) -f $(@) $(SHAREDLIB).$(MAJOR) $(SHAREDLIB)
-	$(CC) $(LDFLAGS) -fPIC @libflags@ $(OBJECT_PATH)/*.o $(LIBS)
+	$(CC) $(LDFLAGS) -fPIC @libflags@ `LC_ALL=C ls $(OBJECT_PATH)/*.o` $(LIBS)
 	$(LN) -s @sharedname@ $(SHAREDLIB)
 
 install-headers:
--- a/projects/demo/Makefile.in
+++ b/projects/demo/Makefile.in
@@ -63,7 +63,7 @@ $(OBJECT_PATH)/.placeholder:
 	touch $(OBJECT_PATH)/.placeholder
 
 stk-demo: demo.cpp $(OBJECTS)
-	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o stk-demo demo.cpp $(OBJECT_PATH)/*.o $(LIBRARY)
+	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o stk-demo demo.cpp `LC_ALL=C ls $(OBJECT_PATH)/*.o` $(LIBRARY)
 
 libdemo: demo.cpp
 	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o demo utilities.cpp demo.cpp -L../../src -lstk $(LIBRARY)
--- a/projects/effects/Makefile.in
+++ b/projects/effects/Makefile.in
@@ -52,7 +52,7 @@ $(OBJECT_PATH)/.placeholder:
 	touch $(OBJECT_PATH)/.placeholder
 
 effects: effects.cpp $(OBJECTS)
-	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o effects effects.cpp $(OBJECT_PATH)/*.o $(LIBRARY)
+	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o effects effects.cpp `LC_ALL=C ls $(OBJECT_PATH)/*.o` $(LIBRARY)
 
 libeffects: effects.cpp
 	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o effects effects.cpp -L../../src -lstk $(LIBRARY)
--- a/projects/eguitar/Makefile.in
+++ b/projects/eguitar/Makefile.in
@@ -52,7 +52,7 @@ $(OBJECT_PATH)/.placeholder:
 	touch $(OBJECT_PATH)/.placeholder
 
 eguitar: eguitar.cpp $(OBJECTS)
-	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o eguitar eguitar.cpp $(OBJECT_PATH)/*.o $(LIBRARY)
+	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o eguitar eguitar.cpp `LC_ALL=C ls $(OBJECT_PATH)/*.o` $(LIBRARY)
 
 libeguitar: eguitar.cpp
 	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o eguitar utilities.cpp eguitar.cpp -L../../src -lstk $(LIBRARY)
--- a/projects/examples/Makefile.in
+++ b/projects/examples/Makefile.in
@@ -57,7 +57,7 @@ strip :
 	strip $(PROGRAMS)
 
 audioprobe: @objects@
-	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o audioprobe audioprobe.cpp $(OBJECT_PATH)/*.o $(LIBRARY) -lrtaudio
+	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o audioprobe audioprobe.cpp `LC_ALL=C ls $(OBJECT_PATH)/*.o` $(LIBRARY) -lrtaudio
 
 midiprobe:
 	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o midiprobe midiprobe.cpp $(LIBRARY) -lrtmidi
--- a/projects/ragamatic/Makefile.in
+++ b/projects/ragamatic/Makefile.in
@@ -53,7 +53,7 @@ $(OBJECT_PATH)/.placeholder:
 	touch $(OBJECT_PATH)/.placeholder
 
 ragamat: ragamat.cpp $(OBJECTS)
-	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o ragamat ragamat.cpp $(OBJECT_PATH)/*.o $(LIBRARY)
+	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o ragamat ragamat.cpp `LC_ALL=C ls $(OBJECT_PATH)/*.o` $(LIBRARY)
 
 libragamat: ragamat.cpp Tabla.cpp Drone.cpp VoicDrum.cpp
 	$(CC) $(LDFLAGS) $(CFLAGS) $(DEFS) -o ragamat Tabla.cpp Drone.cpp VoicDrum.cpp ragamat.cpp -L../../src -lstk $(LIBRARY)
