Oleg
22.02.2018
14:23:20
Denis
22.02.2018
14:23:45
и вроде эта нинзя генерить makefiles если не ошибаюсь.
Oleg
22.02.2018
14:24:14
нет
Google
Oleg
22.02.2018
14:24:30
не вижу в проекте makefile ни одного
Denis
22.02.2018
14:24:31
или оно там сразу несколько даже умеет генерить
Oleg
22.02.2018
14:24:44
ну и само умеет собрать, как я понимаю
Denis
22.02.2018
14:25:38
почему ядро линукса ещё им не собирается?
Oleg
22.02.2018
14:26:07
Denis
22.02.2018
14:26:28
Никто не позволяет, ручная работа это сейчас.
объектник сгенеришь а потом ручками
Во, сформировал суть претензии: любая система сборки она НАД пакетом. Т.е. если я вдруг хочу свою библиотеку начать ею собирать то все клиенты этой библиотеки тоже должны будут уметь ею пользоваться.
Ну и никто не хочет учить очередной cmake
Oleg
22.02.2018
14:27:26
ты хочешь чтобы была функция "make_linux_kernel_module"?
Denis
22.02.2018
14:28:10
да, и make_linux_kernel_module_deb_package
Oleg
22.02.2018
14:28:13
тогда уж можно требовать и "make_pizdato", что уж мелочиться
Denis
22.02.2018
14:28:34
см. выше про претензию
могли бы уже собраться и сделать одну нормальную систему)
Oleg
22.02.2018
14:28:40
и "make_me_bolshe_deneg"
Google
Denis
22.02.2018
14:29:02
v_blockchaine_besplatno_bez_sms
Pavel
22.02.2018
14:29:28
Так есть же https://snapcraft.io/
Oleg
22.02.2018
14:29:50
да чёт оно не оно)
Denis
22.02.2018
14:30:03
теперь у меня претензия к логотипу - везде эта птичка в вариациях, везде реально
и ещё самолётик как у телеграма
2 самых ходовых логотипа
Вообще не рассматриваю языки где ключевые слова или операнды имеют "$" в названиях. К вопросу о бабле)
Если бы эти системы сборки не в общих словах а конкретно описывали магию, которую они творят превращая исходник в бинарник было бы лучше. Как вот этот мезон может поддержать Ди? Есть 50 способов, хз какой они выбрали.
Так то и make поддерживат D, причём отлично. Только дорого обходится это.
Oleg
22.02.2018
15:00:09
хз, мне кажется 2 строки для helloworld это не особо дорого
потом ещё попробую довернуть чего-нибудь, там уже будет понятней удобно эта штука или нет
Denis
22.02.2018
15:03:34
Oleg
22.02.2018
15:04:03
Denis
22.02.2018
15:04:27
а почему папку? в том то и дело
DUB нает внутренности и что есть у нас модули
в других языках не так. и связь между модулями и файлами не очевидна
Oleg
22.02.2018
15:05:12
зато dub не умеет dflags в сборку зависимостей отправить
это полный пиздец
нужно переменную окружения выставлять до вызова dub, чтобы все зависимости собрать с этим флагом
Google
Oleg
22.02.2018
15:05:54
на данный момент меня это парит больше остальных недостатков dub
Denis
22.02.2018
15:06:12
Oleg
22.02.2018
15:06:41
прошу просвятить насчёт способа, а то реально заноза в жопе
Denis
22.02.2018
15:06:51
а, ну да, переменными. а почему тебя это парит? Чем выставить переменную хуже?
PEREMENNAYA=1 dub build
и всё
Oleg
22.02.2018
15:07:39
тем что указание этой переменной нужно где-то прописывать (в README например)
Valeriy
22.02.2018
15:07:56
Denis
22.02.2018
15:08:01
зато DUB пытается собрать опции компиляторов связанные с языками в кучу и у него это получается. другие левые тулзы так не могут
Oleg
22.02.2018
15:08:12
или делать ЕЩЁ ОДИН файл сборки
#!/bin/bash
DFLAGS='...' dub build
Denis
22.02.2018
15:08:13
Oleg
22.02.2018
15:08:44
Denis
22.02.2018
15:09:22
Олег, есть причина почему в DUB это не сделали. Думаю, причина в том что замена компилятора на другой сразу усложняется. Поэтому да, отдельный файл раз именно ЭТОТ компилятор с этими флагами тебе нужен
Oleg
22.02.2018
15:10:16
Denis
22.02.2018
15:10:20
остальные флаги сборки DUB покрывают любой компилятор и завязаны на возможности языка (тестирования и прочее)
Oleg
22.02.2018
15:10:30
имеет смысл это запрещать в библиотеках, но никак не в конечной программе
Valeriy
22.02.2018
15:10:36
Обратил внимание, что у пакетов заточенных на DUB структура каталога отличается от той которую предлагает D для мордулей.
Может просто не разобрался, конечно
Denis
22.02.2018
15:10:45
> не припомню случая, когда мне нужно было конечную программу разными компиляторами собирать
Всегда! dmd для разработки, ldc для релизов
Oleg
22.02.2018
15:11:43
Google
Denis
22.02.2018
15:11:55
Они и генерят разный - ldc более быстрый
dmd не оптимизирован
Oleg
22.02.2018
15:12:15
скажем так: в одном ошибка проявляется, в другом нет
или это из контекста не понятно?
Denis
22.02.2018
15:12:44
Естественно так будет иногда, потому что версии фронтенда отстают например
Oleg
22.02.2018
15:12:51
нет
если брать с одним фронтом
могут быть такие проблемы
Denis
22.02.2018
15:13:25
могут. ну это не повод давать юзерам неоптимизированные бинарники
Короч, я стратег в этом вопросе, а не тактик. Стратегически DUB норм.
Oleg
22.02.2018
15:14:27
потому что ты априори пользуешься dmd для девелопа?
и считаешь это аксиомой?
Denis
22.02.2018
15:15:09
Нет, ты сказал что хочешь менять компиляторы но при этом указывать им нестандартные опции.
Oleg
22.02.2018
15:15:25
где я сказал, что хочу менять компиляторы?
Denis
22.02.2018
15:15:27
Вывод - либо разрабатываешь на старом ldc фронтенде либо отдаёшь тормозные бинари)
Oleg
22.02.2018
15:15:34
я сказал, что хочу флаг прокинуть в либы
Denis
22.02.2018
15:15:39
Oleg
22.02.2018
15:16:06
т.к. я просто пользуюсь ldc и мне нужно собирать под arm
Google
Denis
22.02.2018
15:16:33
Ну вот ты пользуешься устаревшим фронтендом
Oleg
22.02.2018
15:16:38
И ЧТО?
Denis
22.02.2018
15:16:40
На версию он официально отстаёт
Oleg
22.02.2018
15:16:45
И ЧТО?
Denis
22.02.2018
15:16:51
Дык а смысл писать код который наверняка сломаться может в будущем?
Oleg
22.02.2018
15:17:06
ты сейчас понял что спросил?
Denis
22.02.2018
15:17:16
Ну ок. Просто живёшь прошлым.
Oleg
22.02.2018
15:17:18
ты спросил "какой смысл писать на D?"
Denis
22.02.2018
15:17:24
сам люблю плёночные магнитофоны разные
Oleg
22.02.2018
15:17:36
ты видимо просто не работал работу
когда надо чтобы не функции новые, а багов поменьше
Denis
22.02.2018
15:18:03
Синтаксис это наиболее важная часть борьбы с багами.
Oleg
22.02.2018
15:19:01
Denis
22.02.2018
15:19:14
Ну это правда же, иначе велкам ту ассемблер.
Oleg
22.02.2018
15:19:51
каким-то максимализмом школьным попахивает)
Denis
22.02.2018
15:19:58
Стра те ги я
Oleg
22.02.2018
15:20:37
стратегия в том чтобы освоить удобные инструменты в нужной мере и решать задачу
Denis
22.02.2018
15:21:12
Саморазвитие есть главная задача. Стра те ги че ски.
А проблему разницы компиляторов решают интеграционные тесты втупую.
Oleg
22.02.2018
15:22:02
ну да ну да...
Denis
22.02.2018
15:22:59
Ну про "бизнесу нужно решить задачу" это тоже наброс тот ещё.