У меня есть makefile (разработанный для gmake в Linux), который я пытаюсь подключить к OSX, но похоже, что sed не хочет сотрудничать. Я использую GCC для автогенерации файлов зависимостей, а затем немного настраиваю их с помощью sed. Соответствующая часть файла makefile:
$(OBJ_DIR)/%.d: $(SRC_DIR)/%.cpp
$(CPPC) -MM -MD $< -o [email protected]
sed -i 's|\(.*\)\.o:|$(OBJ_DIR)/\1.o $(OBJ_DIR)/\1.d $(TEST_OBJ_DIR)/\1_utest.o:|' [email protected]
В то время как это выполняется без проблем в GNU/Linux, я получаю ошибки, подобные следующим при попытке построить на OSX:
sed: 1: "test/obj/equipmentConta ...": undefined label 'est/obj/equipmentContainer_utest.d'
sed: 1: "test/obj/dice_utest.d": undefined label 'est/obj/dice_utest.d'
sed: 1: "test/obj/color-string_u ...": undefined label 'est/obj/color-string_utest.d'
Казалось бы, что sed отрубает персонажа, но я не вижу решения.