SRC_BUILD_DIR       = build-linux
SRC_BIN_DIR         = $(SRC_BUILD_DIR)/bin
SRC_LIB_DIR         = $(SRC_BUILD_DIR)/lib
SRC_SHARE_DIR       = $(SRC_BUILD_DIR)/share
SRC_BIN             = $(SRC_BIN_DIR)/silicon
SRC_MOUNTER_BIN     = $(SRC_BIN_DIR)/silicon_rootmount
SRC_LIBS            = $(SRC_LIB_DIR)/lib
SRC_SAPPLICATIONS   = $(SRC_LIB_DIR)/silicon/apps/*
SRC_PLUGINS         = $(SRC_LIB_DIR)/silicon/plugins/*
SRC_SILICON_DIR     = $(SRC_SHARE_DIR)/silicon/empire
SRC_THEMES_DIR      = $(SRC_SILICON_DIR)/themes
SRC_ICONS_DIR       = $(SRC_SILICON_DIR)/icons
SRC_LANGUAGES_DIR   = $(SRC_SILICON_DIR)/languages/*
SRC_DREAM_THEME     = $(SRC_THEMES_DIR)/Dream/*
SRC_AMBIANCE_THEME  = $(SRC_THEMES_DIR)/Ambiance-Dream/*
SRC_RADIANCE_THEME  = $(SRC_THEMES_DIR)/Radiance-Dream/*
SRC_ADWAITA_THEME   = $(SRC_THEMES_DIR)/Adwaita-Dream/*
SRC_CLEAN_THEME     = $(SRC_THEMES_DIR)/Clean/*
SRC_APPLICATIONS    = src/Files/silicon.desktop
SRC_ICONS	    = src/Files/icons/silicon_


PREFIX              = /usr
DST_BIN_DIR         = $(PREFIX)/bin
DST_LIB_DIR         = $(PREFIX)/lib
DST_SHARE_DIR       = $(PREFIX)/share
DST_BIN             = $(DST_BIN_DIR)/silicon
DST_MOUNTER_BIN     = $(DST_BIN_DIR)/silicon_rootmount
DST_SAPPLICATIONS   = $(DST_LIB_DIR)/silicon/apps
DST_PLUGINS         = $(DST_LIB_DIR)/silicon/plugins
DST_SILICON_DIR     = $(DST_SHARE_DIR)/silicon/empire
DST_THEMES_DIR      = $(DST_SILICON_DIR)/themes
DST_ICONS_DIR       = $(DST_SILICON_DIR)/icons
DST_LANGUAGES_DIR   = $(DST_SILICON_DIR)/languages
DST_DREAM_THEME     = $(DST_THEMES_DIR)/Dream
DST_AMBIANCE_THEME  = $(DST_THEMES_DIR)/Ambiance-Dream
DST_RADIANCE_THEME  = $(DST_THEMES_DIR)/Radiance-Dream
DST_ADWAITA_THEME   = $(DST_THEMES_DIR)/Adwaita-Dream
DST_CLEAN_THEME     = $(DST_THEMES_DIR)/Clean
DST_APPLICATIONS    = $(DST_SHARE_DIR)/applications
DST_ICONS           = $(DST_SHARE_DIR)/icons/hicolor/


INSTALL_FILE        = install -v -m 644 -p
INSTALL_BIN         = install -v -m 755 -p
INSTALL_LIB         = install -v -m 755 -p
INSTALL_DIR         = install -d
MAKE_SYMLINKS       = ln -s
DEL_FILE            = rm
DEL_DIR             = rmdir
CD                  = cd

QMAKE               = qmake -r -spec linux-g++
MAKE                = make

if test /usr/bin/qmake-qt4; then QMAKE = qmake-qt4 -r -spec linux-g++; fi

src/silicon:
	$(CD) src && $(QMAKE) && $(MAKE)

clean:
#	$(DEL_FOLDER) build-linux
	$(CD) src && $(MAKE) clean
	$(DEL_FILE) src/Makefile

install:

#	Binary
	$(INSTALL_DIR)  $(DST_BIN_DIR)
	$(INSTALL_BIN)  $(SRC_BIN) $(DST_BIN)
	$(INSTALL_BIN)  $(SRC_MOUNTER_BIN) $(DST_MOUNTER_BIN)

#	libs, SApps and Plugins
	$(INSTALL_DIR)  $(DST_LIB_DIR)
	$(INSTALL_DIR)  $(DST_SAPPLICATIONS)
	$(INSTALL_DIR)  $(DST_PLUGINS)
	$(INSTALL_LIB)  $(SRC_LIBS)*.so.0.8.00 $(DST_LIB_DIR)
	$(INSTALL_LIB)  $(SRC_SAPPLICATIONS)   $(DST_SAPPLICATIONS)
	$(INSTALL_LIB)  $(SRC_PLUGINS)         $(DST_PLUGINS)

#	share files
	$(INSTALL_DIR)  $(DST_SHARE_DIR)
	$(INSTALL_DIR)  $(DST_THEMES_DIR)
	$(INSTALL_DIR)  $(DST_ICONS_DIR)
	$(INSTALL_DIR)  $(DST_LANGUAGES_DIR)
	$(INSTALL_DIR)  $(DST_DREAM_THEME)
	$(INSTALL_DIR)  $(DST_AMBIANCE_THEME)
	$(INSTALL_DIR)  $(DST_RADIANCE_THEME)
	$(INSTALL_DIR)  $(DST_ADWAITA_THEME)
	$(INSTALL_DIR)  $(DST_CLEAN_THEME)
	$(INSTALL_DIR)  $(DST_APPLICATIONS)
	$(INSTALL_DIR)  $(DST_ICONS)
	$(INSTALL_FILE) $(SRC_LANGUAGES_DIR)  $(DST_LANGUAGES_DIR)
	$(INSTALL_FILE) $(SRC_DREAM_THEME)    $(DST_DREAM_THEME)
	$(INSTALL_FILE) $(SRC_AMBIANCE_THEME) $(DST_AMBIANCE_THEME)
	$(INSTALL_FILE) $(SRC_RADIANCE_THEME) $(DST_RADIANCE_THEME)
	$(INSTALL_FILE) $(SRC_ADWAITA_THEME)  $(DST_ADWAITA_THEME)
	$(INSTALL_FILE) $(SRC_CLEAN_THEME)    $(DST_CLEAN_THEME)
	$(INSTALL_FILE) $(SRC_APPLICATIONS)   $(DST_APPLICATIONS)
	$(INSTALL_FILE) $(SRC_ICONS)22.png    $(DST_ICONS)22x22/apps/silicon.png
	$(INSTALL_FILE) $(SRC_ICONS)32.png    $(DST_ICONS)32x32/apps/silicon.png
	$(INSTALL_FILE) $(SRC_ICONS)48.png    $(DST_ICONS)48x48/apps/silicon.png
	$(INSTALL_FILE) $(SRC_ICONS)64.png    $(DST_ICONS)64x64/apps/silicon.png
	$(INSTALL_FILE) $(SRC_ICONS)128.png   $(DST_ICONS)128x128/apps/silicon.png

#	Make SymLinks
	$(MAKE_SYMLINKS) libsiliconlib.so.0.8.00   $(DST_LIB_DIR)/libsiliconlib.so.0.8
	$(MAKE_SYMLINKS) libsiliconlib.so.0.8.00   $(DST_LIB_DIR)/libsiliconlib.so.0
	$(MAKE_SYMLINKS) libsiliconlib.so.0.8.00   $(DST_LIB_DIR)/libsiliconlib.so
	$(MAKE_SYMLINKS) libsidi.so.0.8.00      $(DST_LIB_DIR)/libsidi.so.0.8
	$(MAKE_SYMLINKS) libsidi.so.0.8.00      $(DST_LIB_DIR)/libsidi.so.0
	$(MAKE_SYMLINKS) libsidi.so.0.8.00      $(DST_LIB_DIR)/libsidi.so
	$(MAKE_SYMLINKS) libsdatabase.so.0.8.00 $(DST_LIB_DIR)/libsdatabase.so.0.8
	$(MAKE_SYMLINKS) libsdatabase.so.0.8.00 $(DST_LIB_DIR)/libsdatabase.so.0
	$(MAKE_SYMLINKS) libsdatabase.so.0.8.00 $(DST_LIB_DIR)/libsdatabase.so


uninstall:
#	Binary
	$(DEL_FILE)     $(DST_BIN)
	$(DEL_FILE)     $(DST_MOUNTER_BIN)

#	libs, SApps and Plugins
	$(DEL_FILE)     $(DST_LIB_DIR)/libsiliconlib.so*
	$(DEL_FILE)     $(DST_LIB_DIR)/libsidi.so*
	$(DEL_FILE)     $(DST_LIB_DIR)/libsdatabase.so*
	$(DEL_FILE)     $(DST_SAPPLICATIONS)/*
	$(DEL_FILE)     $(DST_PLUGINS)/*
	$(DEL_DIR)      $(DST_SAPPLICATIONS)
	$(DEL_DIR)      $(DST_PLUGINS)

#	share files
	$(DEL_FILE)     $(DST_LANGUAGES_DIR)/*
	$(DEL_FILE)     $(DST_DREAM_THEME)/*
	$(DEL_FILE)     $(DST_AMBIANCE_THEME)/*
	$(DEL_FILE)     $(DST_RADIANCE_THEME)/*
	$(DEL_FILE)     $(DST_ADWAITA_THEME)/*
	$(DEL_FILE)     $(DST_CLEAN_THEME)/*
	$(DEL_FILE)     $(DST_APPLICATIONS)/silicon.desktop
	$(DEL_FILE)     $(DST_ICONS)22x22/apps/silicon.png
	$(DEL_FILE)     $(DST_ICONS)32x32/apps/silicon.png
	$(DEL_FILE)     $(DST_ICONS)48x48/apps/silicon.png
	$(DEL_FILE)     $(DST_ICONS)64x64/apps/silicon.png
	$(DEL_FILE)     $(DST_ICONS)128x128/apps/silicon.png
	$(DEL_DIR)      $(DST_DREAM_THEME)
	$(DEL_DIR)      $(DST_AMBIANCE_THEME)
	$(DEL_DIR)      $(DST_RADIANCE_THEME)
	$(DEL_DIR)      $(DST_ADWAITA_THEME)
	$(DEL_DIR)      $(DST_CLEAN_THEME)
	$(DEL_DIR)      $(DST_THEMES_DIR)
	$(DEL_DIR)      $(DST_ICONS_DIR)
	$(DEL_DIR)      $(DST_LANGUAGES_DIR)

