protected function generateTaoScss($archiveDir, $icons)
    {
        if (!is_readable($archiveDir . '/style.css')) {
            return array('error' => __('Unable to read the file : ') . $archiveDir . '/style.css');
        }
        $cssContent = file_get_contents($archiveDir . '/style.css');
        $iconCss    = array(
            'classes' => '',
            'def'     => '',
            'vars'    => ''
        );

        // font-face
        $cssContentArr  = explode('[class^="icon-"]', $cssContent);
        $iconCss['def'] = str_replace('fonts/tao.', '#{$fontPath}tao/tao.', $cssContentArr[0]) . "\n";

        // font-family etc.
        $cssContentArr   = explode('.icon', $cssContentArr[1]);
        $iconCss['vars'] = str_replace(', [class*=" icon-"]', '@mixin tao-icon-setup', $cssContentArr[0]);

        // the actual css code
        $iconCss['classes'] = '[class^="icon-"], [class*=" icon-"] { @include tao-icon-setup; }' . "\n";

        // build code for PHP icon class and tao-*.scss files
        foreach ($icons as $iconProperties) {

            $properties = $iconProperties->properties;
            $icon       = $properties->name;
            $iconHex    = dechex($properties->code);

            // tao-*.scss data
            $iconCss['vars'] .= '@mixin icon-' . $icon . ' { content: "\\' . $iconHex . '"; }' . "\n";
            $iconCss['classes'] .= '.icon-' . $icon . ':before { @include icon-' . $icon . '; }' . "\n";
        }

        // compose and write SCSS files
        $retVal = array();
        foreach ($iconCss as $key => $value) {
            $retVal[$key] = $this->tmpDir . '/_tao-icon-' . $key . '.scss';
            file_put_contents($retVal[$key], $this->doNotEdit . $iconCss[$key]);
        }
        return $retVal;
    }