Fixed possible multiple definition problem with many source files