Намёк понят.
Посидел вечерок и, вроде бы даже, дохимичил. В смысле сварганил простенький wrapper, эмулирующий поведение _findfirst/_findnext/_findclose на opendir/readdir/closedir. Завтра внедрю в основной код и дам на проверку.
Подскажи, кстати, как более опытный товарищ, факт компиляции под Линуксами по какому макросу надёжно отслеживается? #if defined (LINUX) будет достаточно? И как нынешний стандарт GNU C относится к не ANSI и не POSIX функции stricmp? Стоит её упоминания поменять на вызовы _stricmp, как это рекомендует сделать VS и уже сделал в своём варианте исходников
Timeslip?
--- Update ---
Готово.
http://alchemistslab.fatal.ru/fallout/dsp/sslc-WIP-20090409.rarВ архиве только исходники без исполняемых образов.
* Добавлена возможность сборки под Linux.
* Имитация поведения DOS'овских _findfirst/_findnext при поиске файлов по маскам.
* Исправлены объявления нескольких функций, не совпадавшие по типам с реализацией.
Нужно проверить, как поведёт себя код на нормальном Linux. Это, наверное, лучше сделать
WG, ибо я всё ещё не поставил себе пингвинов.
Весь специфичный для *nix код активируется по условию #if defined (LINUX). Возможно, его нужно будет уточнить/заменить.
Единственное, что мне не нравится в текущем варианте кода, это добавленная функция сравнения паттернов. Она элегантная, но рекурсивная на глубину до strlen(fliename)*strlen(pattern). И функция не моя, а взятая из довольно древней FAQ'овой части одного линускоидского форума, в который, непонятно, откуда её перепечатали. В случае чего, авторство установить будет проблематично.
Ну и, вопли компилятора VS можно смело игнорировать, ибо они все относятся к несоответствию кода стандарту С++ 99.
Возможно, в будущем, нужно будет явно объявить весь код как extern "C". Пока же это не мешает.
--- Update ---
Да, кто скачал int2ssl v1.56 по моей ссылке, перекачайте заново. Правил в полусонном состоянии и в первом варианте не все version stamp'ы поменял.