[AWS] Building AWS GPL 2.2.0 on OpenBSD

Tero Koskinen tero.koskinen at iki.fi
Tue Apr 24 19:17:36 CEST 2007


Hi,

I just wanted to inform that after doing little tweaking[1] to gcc 4.2
and then little more to AWS (see the diff at the end of the mail)
I was able to compile and run AWS on OpenBSD/i386 4.1-current.

Short explanation of the diff:
CURDIR change is done because ksh (the default shell) on OpenBSD
doesn't export PWD environment variable in all cases and -O0 changes
are done because gcc 4.2 goes into infinite loop when trying to
optimize aws-session.adb or aws-mime.adb. The default "make" on
OpenBSD is BSD make and GNU make is "gmake", so one needs to
use $(MAKE) instead of "make" in the Makefile.


[1] http://marc.info/?l=openbsd-ports&m=117679065130354&w=2
-- 
Tero Koskinen - http://iki.fi/tero.koskinen/

#
#
# patch "makefile"
#  from [675f07c5b514f1af6d20090801e78c0ffce90e79]
#    to [fa75e2b5924c720db4ef0f1b12b87e4127ceb326]
# 
# patch "src/src.gpr"
#  from [c87d6ba383968a3abcdc655e71be0b3e2efca6bb]
#    to [0e27d1b76e35077830fa7a27360c3194b0afe4df]
# 
# patch "templates_parser/makefile"
#  from [218d9e4ce5121a2e47e2f6e2f359cb2c130de063]
#    to [a42cfcb8369ebe71452ba9a099eca6d64bae066c]
#
============================================================
--- makefile	675f07c5b514f1af6d20090801e78c0ffce90e79
+++ makefile	fa75e2b5924c720db4ef0f1b12b87e4127ceb326
@@ -28,6 +28,7 @@ PTH := $(PATH)
 
 APP := $(ADA_PROJECT_PATH)
 PTH := $(PATH)
+CURDIR=$(shell pwd)
 
 ifeq (${OS}, Windows_NT)
 export ADA_PROJECT_PATH = $(PWD)/.build/projects\;${APP}
@@ -37,7 +38,7 @@ else
 AWS_PTH := $(PWD)/$(BDIR)/include/ai302/lib:$(AWS_PTH)
 export PATH = $(AWS_PTH):${PTH}
 else
-export ADA_PROJECT_PATH = $(PWD)/.build/projects:${APP}
+export ADA_PROJECT_PATH=$(CURDIR)/.build/projects:${APP}
 endif
 
 all:
============================================================
--- src/src.gpr	c87d6ba383968a3abcdc655e71be0b3e2efca6bb
+++ src/src.gpr	0e27d1b76e35077830fa7a27360c3194b0afe4df
@@ -130,7 +130,10 @@ project Src is
          when "Release" =>
             for Default_Switches ("Ada")
               use Shared.Common_Options & Shared.Release_Options;
-
+            for Switches ("aws-mime.adb")
+              use TP_Common_Switches & Shared.Debug_Options & "-O0";
+            for Switches ("aws-session.adb")
+              use TP_Common_Switches & Shared.Debug_Options & "-O0";
             for Switches ("templates_parser.adb")
               use TP_Common_Switches & Shared.Release_Options;
             for Switches ("templates_parser-filter.adb")
============================================================
--- templates_parser/makefile	218d9e4ce5121a2e47e2f6e2f359cb2c130de063
+++ templates_parser/makefile	a42cfcb8369ebe71452ba9a099eca6d64bae066c
@@ -24,16 +24,16 @@ test: build
 	gnatmake -Ptemplates_parser
 
 test: build
-	make -C regtests $(ALL_OPTIONS) test
+	$(MAKE) -C regtests $(ALL_OPTIONS) test
 
 doc:
-	make -C docs $(ALL_OPTIONS) doc
+	$(MAKE) -C docs $(ALL_OPTIONS) doc
 	echo Templates_Parser Documentation built with success.
 
 clean:
 	gnatclean -Ptemplates_parser
-	make -C docs clean
-	make -C regtests clean
+	$(MAKE) -C docs clean
+	$(MAKE) -C regtests clean
 
 distrib:
 	-rm templates_parser-?.?.tar*


More information about the AWS mailing list