--- a/Makefile
+++ b/Makefile
@@ -21,7 +21,7 @@
 ###############################
 # this should not be modified #
 ###############################
-GCC=gcc
+CC?=gcc
 STRIP=strip
 CHMOD=chmod -x
 JAVAC=javac -source $(JAVA_COMPAT_LEVEL) -target $(JAVA_COMPAT_LEVEL) -encoding ISO-8859-1
@@ -51,7 +51,7 @@
 libs: $(LIBTARGET_SH)
 
 %.o: %.c LibusbJava.h
-	$(GCC) -fPIC -g -c -std=c99 -Wall -Wno-pointer-to-int-cast $(LIBINCS) $< -o$@
+	$(CC) -fPIC -g -c -std=c99 -Wall -Wno-pointer-to-int-cast $(LIBINCS) $< -o$@
 
 $(LIBTARGET_ST): $(LIBSRCS)
 
@@ -64,25 +64,25 @@
 
 
 $(LIBTARGET_ST)$(VERSIONSUFFIX): $(LIBSRCS)
-	$(GCC) -shared -Wl,-soname,$(LIBTARGET_ST),-static $(LIBINCS) $(LIBSRCS) -static -o $(LIBTARGET_ST)$(VERSIONSUFFIX) $(LIBLIBS)
+	$(CC) -shared -Wl,-soname,$(LIBTARGET_ST),-static $(LIBINCS) $(LIBSRCS) -static -o $(LIBTARGET_ST)$(VERSIONSUFFIX) $(LIBLIBS)
 	[ -r $(LIBTARGET_ST) ] || ln -s $(LIBTARGET_ST)$(VERSIONSUFFIX) $(LIBTARGET_ST)
 	$(STRIP) $(LIBTARGET_ST)
 	$(CHMOD) $(LIBTARGET_ST)
 
 $(LIBTARGET_SH)$(VERSIONSUFFIX): $(LIBSRCS)
-	$(GCC) -fPIC -shared -Wl,-soname,$(LIBTARGET_SH) $(LIBINCS) $(LIBSRCS) -o $(LIBTARGET_SH)$(VERSIONSUFFIX) $(LIBLIBS)
+	$(CC) -fPIC -shared -Wl,-soname,$(LIBTARGET_SH) $(LIBINCS) $(LIBSRCS) -o $(LIBTARGET_SH)$(VERSIONSUFFIX) $(LIBLIBS)
 	[ -r $(LIBTARGET_SH) ] || ln -s $(LIBTARGET_SH)$(VERSIONSUFFIX) $(LIBTARGET_SH)
 	$(STRIP) $(LIBTARGET_SH)
 	$(CHMOD) $(LIBTARGET_SH)
 
 $(LIBTARGET)$(VERSIONSUFFIX): $(LIBSRCS)
-	$(GCC) -fPIC -shared -Wl,-soname,$(LIBTARGET) $(LIBINCS) $(LIBSRCS) -o $(LIBTARGET)$(VERSIONSUFFIX) $(LIBLIBS)
+	$(CC) -fPIC -shared -Wl,-soname,$(LIBTARGET) $(LIBINCS) $(LIBSRCS) -o $(LIBTARGET)$(VERSIONSUFFIX) $(LIBLIBS)
 	[ -r $(LIBTARGET) ] || ln -s $(LIBTARGET)$(VERSIONSUFFIX) $(LIBTARGET)
 	$(STRIP) $(LIBTARGET)
 	$(CHMOD) $(LIBTARGET)
 
 $(LIBTARGET_64)$(VERSIONSUFFIX): $(LIBSRCS64)
-	$(GCC) -fPIC -m64 -shared -std=c99 -Wall -Wno-pointer-to-int-cast -Wl,-soname,$(LIBTARGET_64) $(LIBINCS) $(LIBSRCS64) $(LIBLIBS) -o $(LIBTARGET_64)$(VERSIONSUFFIX)
+	$(CC) -fPIC -m64 -shared -std=c99 -Wall -Wno-pointer-to-int-cast -Wl,-soname,$(LIBTARGET_64) $(LIBINCS) $(LIBSRCS64) $(LIBLIBS) -o $(LIBTARGET_64)$(VERSIONSUFFIX)
 	[ -r $(LIBTARGET_64) ] || ln -s $(LIBTARGET_64)$(VERSIONSUFFIX) $(LIBTARGET_64)
 	$(STRIP) $(LIBTARGET_64)
 	$(CHMOD) $(LIBTARGET_64)
