Dear Étoilé team,

recently, I played around with gnustep-make's configure-options a bit
and stumbled upon the fact the non-flattened filesystem organisation
(where binaries reside in, say, a x86_64/linux-gnu/gnu-gnu-gnu/
subdirectory within bundles) does not play well with etoile.make. This
is probably not a big deal since few people seem to use this kind of
setup. I have nevertheless worked out a small patch to etoile.make,
which handles this case. Since it's pretty straightforward I have
attached it in the hope that it might be acceptable.

best wishes


Niels
Index: etoile.make
===================================================================
--- etoile.make	(revision 4518)
+++ etoile.make	(working copy)
@@ -30,6 +30,13 @@
   export GNUSTEP_INSTALLATION_DOMAIN = SYSTEM
 endif
 
+### Support for non-flattened GNUstep ###
+ifeq ($(GNUSTEP_IS_FLATTENED), no)
+  export NOFLAT_FRAGMENT = ${GNUSTEP_HOST_CPU}/${GNUSTEP_HOST_OS}/${LIBRARY_COMBO}/
+else
+  export NOFLAT_FRAGMENT =
+endif
+
 ### Internal Dependency Handling ###
 
 # CURDIR is the path where make is run, with gnustep-make the value changes in
@@ -144,19 +151,19 @@
 	if [ -d  $(PROJECT_DIR)/$(PROJECT_NAME).framework ]; then \
 	exported="yes"; \
 	$(LN_S) -f $(PROJECT_DIR)/$(PROJECT_NAME).framework $(BUILD_DIR)/$(PROJECT_NAME).framework; \
-	$(LN_S) -f ${PROJECT_DIR}/${PROJECT_NAME}.framework/Versions/Current/lib${PROJECT_NAME}${SHARED_LIBEXT}* $(BUILD_DIR); \
+	$(LN_S) -f ${PROJECT_DIR}/${PROJECT_NAME}.framework/Versions/Current/${NOFLAT_FRAGMENT}/lib${PROJECT_NAME}${SHARED_LIBEXT}* $(BUILD_DIR); \
 	fi; \
 	\
 	## Export Library Files from obj/lib ## \
-	if [ -f $(PROJECT_DIR)/obj/lib$(PROJECT_NAME)$(SHARED_LIBEXT) ]; then \
+	if [ -f $(PROJECT_DIR)/obj/${NOFLAT_FRAGMENT}/lib$(PROJECT_NAME)$(SHARED_LIBEXT) ]; then \
 	exported="yes"; \
-	$(LN_S) -f ${PROJECT_DIR}/obj/lib${PROJECT_NAME}${SHARED_LIBEXT}* $(BUILD_DIR); \
+	$(LN_S) -f ${PROJECT_DIR}/obj/${NOFLAT_FRAGMENT}/lib${PROJECT_NAME}${SHARED_LIBEXT}* $(BUILD_DIR); \
 	fi; \
 	\
 	## Export Library Files from Source/obj/lib ## \
-	if [ -f $(PROJECT_DIR)/Source/obj/lib$(PROJECT_NAME)$(SHARED_LIBEXT) ]; then \
+	if [ -f $(PROJECT_DIR)/Source/obj/${NOFLAT_FRAGMENT}/lib$(PROJECT_NAME)$(SHARED_LIBEXT) ]; then \
 	exported="yes"; \
-	$(LN_S) -f ${PROJECT_DIR}/Source/obj/lib${PROJECT_NAME}${SHARED_LIBEXT}* $(BUILD_DIR); \
+	$(LN_S) -f ${PROJECT_DIR}/Source/obj/${NOFLAT_FRAGMENT}/lib${PROJECT_NAME}${SHARED_LIBEXT}* $(BUILD_DIR); \
 	fi; \
 	\
 	## Export Headers ## \
_______________________________________________
Etoile-dev mailing list
Etoile-dev@gna.org
https://mail.gna.org/listinfo/etoile-dev

Reply via email to