diff mbox series

[bug#67950,1/3] gnu: Add inform.

Message ID d92836ac-7d15-5e44-0c28-14ce0ae04c42@disroot.org
State New
Headers show
Series gnu: Add devours. | expand

Commit Message

Adam Faiz Dec. 21, 2023, 10:40 a.m. UTC
From 7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1 Mon Sep 17 00:00:00 2001
Message-ID: <7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1.1703154486.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
References: <cover.1703154486.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 21 Dec 2023 18:15:41 +0800
Subject: [PATCH 1/3] gnu: Add inform.

* gnu/packages/patches/inform-add-makefile.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/game-development.scm (inform): New variable.
---
 gnu/local.mk                                  |   1 +
 gnu/packages/game-development.scm             |  25 ++++
 .../patches/inform-add-makefile.patch         | 109 ++++++++++++++++++
 3 files changed, 135 insertions(+)
 create mode 100644 gnu/packages/patches/inform-add-makefile.patch

Comments

Liliana Marie Prikler Dec. 22, 2023, 5:05 p.m. UTC | #1
Am Donnerstag, dem 21.12.2023 um 18:40 +0800 schrieb Adam Faiz:
> From 7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1 Mon Sep 17 00:00:00
> 2001
> Message-ID:
> <7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1.1703154486.git.adam.faiz@di
> sroot.org>
> In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
> References: <cover.1703154486.git.adam.faiz@disroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Thu, 21 Dec 2023 18:15:41 +0800
> Subject: [PATCH 1/3] gnu: Add inform.
> 
> * gnu/packages/patches/inform-add-makefile.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it here.
> * gnu/packages/game-development.scm (inform): New variable.
> ---
>  gnu/local.mk                                  |   1 +
>  gnu/packages/game-development.scm             |  25 ++++
>  .../patches/inform-add-makefile.patch         | 109
> ++++++++++++++++++
>  3 files changed, 135 insertions(+)
>  create mode 100644 gnu/packages/patches/inform-add-makefile.patch
> 
> diff --git a/gnu/local.mk b/gnu/local.mk
> index f7aec83e8a..1bc955ce1f 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1449,6 +1449,7 @@ dist_patch_DATA
> =                                         \
>    %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch      \
>    %D%/packages/patches/imagemagick-ReadDCMPixels-fix.patch     \
>    %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-
> fix.patch       \
> +  %D%/packages/patches/inform-add-makefile.patch               \
>    %D%/packages/patches/inkscape-poppler-compat.patch           \
>    %D%/packages/patches/instead-use-games-path.patch            \
>    %D%/packages/patches/intltool-perl-compatibility.patch       \
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> development.scm
> index a2d7c5ea63..0c467de23f 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -2771,6 +2771,31 @@ (define-public ioquake3
>  people base their games, ports to new platforms, and other
> projects.")
>        (license license:gpl2))))
>  
> +(define-public inform
> +  (package
> +    (name "inform")
> +    (version "6.41")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://jxself.org/git/inform.git")
> +             (commit (string-append "v" version))))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32
> "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))
> +       (patches
> +        (search-patches
> +         "inform-add-makefile.patch"))))
> +    (build-system gnu-build-system)
> +    (native-inputs (list autoconf automake))
> +    (synopsis "The Inform 6 compiler")
> +    (description
> +     "This is an Inform 6 compiler that has been modified slightly
> to work better
> +when the Inform standard library is in a non-standard location.")
> +    (home-page "https://jxself.org/git/inform.git")
> +    (license license:gpl3+)))
> +
>  (define-public instead
>    (package
>      (name "instead")
> diff --git a/gnu/packages/patches/inform-add-makefile.patch
> b/gnu/packages/patches/inform-add-makefile.patch
> new file mode 100644
> index 0000000000..497d40979e
> --- /dev/null
> +++ b/gnu/packages/patches/inform-add-makefile.patch
> @@ -0,0 +1,109 @@
> +From b2332ab850dc260be8892ad5a4148b335c6b193b Mon Sep 17 00:00:00
> 2001
> +From: AwesomeAdam54321 <adam.faiz@disroot.org>
> +Date: Wed, 20 Dec 2023 22:38:41 +0800
> +Subject: [PATCH] Implement a Makefile for Inform.
> +
> +---
> + Makefile.am     | 17 +++++++++++++++++
> + configure.ac    | 40 ++++++++++++++++++++++++++++++++++++++++
> + src/Makefile.am | 17 +++++++++++++++++
> + 3 files changed, 74 insertions(+)
> + create mode 100644 Makefile.am
> + create mode 100644 configure.ac
> + create mode 100644 src/Makefile.am
> +
> +diff --git a/Makefile.am b/Makefile.am
> +new file mode 100644
> +index 0000000..fb99417
> +--- /dev/null
> ++++ b/Makefile.am
> +@@ -0,0 +1,17 @@
> ++# This file is part of Inform.
> ++#
> ++# Inform is free software: you can redistribute it and/or modify it
> ++# under the terms of the GNU General Public License as published by
> ++# theFree Software Foundation, either version 3 of the License, or
> ++#(at your option) any later version.
> ++#
> ++# Inform is distributed in the hope that it will be useful, but
> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> ++# General Public License for more details.
> ++#
> ++# You should have received a copy of the GNU General Public License
> ++# along with Inform. If not, see https://gnu.org/licenses/
> ++
> ++AUTOMAKE_OPTIONS = foreign
> ++SUBDIRS = src
> +diff --git a/configure.ac b/configure.ac
> +new file mode 100644
> +index 0000000..0ff8ced
> +--- /dev/null
> ++++ b/configure.ac
> +@@ -0,0 +1,40 @@
> ++# Process this file with autoconf to produce a configure script.
> ++#
> ++# This file is part of Inform.
> ++#
> ++# Inform is free software: you can redistribute it and/or modify it
> ++# under the terms of the GNU General Public License as published by
> ++# theFree Software Foundation, either version 3 of the License, or
> ++#(at your option) any later version.
> ++#
> ++# Inform is distributed in the hope that it will be useful, but
> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> ++# General Public License for more details.
> ++#
> ++# You should have received a copy of the GNU General Public License
> ++# along with Inform. If not, see https://gnu.org/licenses/
> ++
> ++AC_INIT([inform], [6.41], [j@jxself.org])
> ++AM_INIT_AUTOMAKE([foreign])
> ++AC_OUTPUT(Makefile src/Makefile)
> ++
> ++# Checks for programs.
> ++AC_PROG_CC
> ++
> ++# Checks for libraries.
> ++
> ++# Checks for header files.
> ++AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h])
> ++
> ++# Checks for typedefs, structures, and compiler characteristics.
> ++AC_CHECK_HEADER_STDBOOL
> ++AC_TYPE_SIZE_T
> ++
> ++# Checks for library functions.
> ++AC_FUNC_ERROR_AT_LINE
> ++AC_FUNC_MALLOC
> ++AC_FUNC_REALLOC
> ++AC_CHECK_FUNCS([memmove memset realpath strchr strtol])
> ++
> ++AC_OUTPUT
> +diff --git a/src/Makefile.am b/src/Makefile.am
> +new file mode 100644
> +index 0000000..b548944
> +--- /dev/null
> ++++ b/src/Makefile.am
> +@@ -0,0 +1,17 @@
> ++# This file is part of Inform.
> ++#
> ++# Inform is free software: you can redistribute it and/or modify it
> ++# under the terms of the GNU General Public License as published by
> ++# theFree Software Foundation, either version 3 of the License, or
> ++#(at your option) any later version.
> ++#
> ++# Inform is distributed in the hope that it will be useful, but
> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> ++# General Public License for more details.
> ++#
> ++# You should have received a copy of the GNU General Public License
> ++# along with Inform. If not, see https://gnu.org/licenses/
> ++
> ++bin_PROGRAMS = inform
> ++inform_SOURCES = arrays.c asm.c bpatch.c chars.c directs.c errors.c
> expressc.c expressp.c files.c header.h inform.c lexer.c memory.c
> objects.c states.c symbols.c syntax.c tables.c text.c veneer.c
> verbs.c
> +-- 
> +2.41.0
> +
You might want to suggest this patch to upstream.  If not, you can do
something similar by using copy-build-system and a build phase that
reads something along the lines of
  (apply invoke (gcc-for-target) "-o" "inform"
         (find-files "src" "\\.c$"))
Cheers
Adam Faiz Dec. 24, 2023, 12:35 p.m. UTC | #2
On 12/23/23 01:05, Liliana Marie Prikler wrote:
> Am Donnerstag, dem 21.12.2023 um 18:40 +0800 schrieb Adam Faiz:
>> From 7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1 Mon Sep 17 00:00:00
>> 2001
>> Message-ID:
>> <7e5c86c9e60ba200f14c0fd8ef8e555c0dabcbc1.1703154486.git.adam.faiz@di
>> sroot.org>
>> In-Reply-To: <cover.1703154486.git.adam.faiz@disroot.org>
>> References: <cover.1703154486.git.adam.faiz@disroot.org>
>> From: AwesomeAdam54321 <adam.faiz@disroot.org>
>> Date: Thu, 21 Dec 2023 18:15:41 +0800
>> Subject: [PATCH 1/3] gnu: Add inform.
>>
>> * gnu/packages/patches/inform-add-makefile.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Register it here.
>> * gnu/packages/game-development.scm (inform): New variable.
>> ---
>>  gnu/local.mk                                  |   1 +
>>  gnu/packages/game-development.scm             |  25 ++++
>>  .../patches/inform-add-makefile.patch         | 109
>> ++++++++++++++++++
>>  3 files changed, 135 insertions(+)
>>  create mode 100644 gnu/packages/patches/inform-add-makefile.patch
>>
>> diff --git a/gnu/local.mk b/gnu/local.mk
>> index f7aec83e8a..1bc955ce1f 100644
>> --- a/gnu/local.mk
>> +++ b/gnu/local.mk
>> @@ -1449,6 +1449,7 @@ dist_patch_DATA
>> =                                         \
>>    %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch      \
>>    %D%/packages/patches/imagemagick-ReadDCMPixels-fix.patch     \
>>    %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-
>> fix.patch       \
>> +  %D%/packages/patches/inform-add-makefile.patch               \
>>    %D%/packages/patches/inkscape-poppler-compat.patch           \
>>    %D%/packages/patches/instead-use-games-path.patch            \
>>    %D%/packages/patches/intltool-perl-compatibility.patch       \
>> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
>> development.scm
>> index a2d7c5ea63..0c467de23f 100644
>> --- a/gnu/packages/game-development.scm
>> +++ b/gnu/packages/game-development.scm
>> @@ -2771,6 +2771,31 @@ (define-public ioquake3
>>  people base their games, ports to new platforms, and other
>> projects.")
>>        (license license:gpl2))))
>>  
>> +(define-public inform
>> +  (package
>> +    (name "inform")
>> +    (version "6.41")
>> +    (source
>> +     (origin
>> +       (method git-fetch)
>> +       (uri (git-reference
>> +             (url "https://jxself.org/git/inform.git")
>> +             (commit (string-append "v" version))))
>> +       (file-name (git-file-name name version))
>> +       (sha256
>> +        (base32
>> "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))
>> +       (patches
>> +        (search-patches
>> +         "inform-add-makefile.patch"))))
>> +    (build-system gnu-build-system)
>> +    (native-inputs (list autoconf automake))
>> +    (synopsis "The Inform 6 compiler")
>> +    (description
>> +     "This is an Inform 6 compiler that has been modified slightly
>> to work better
>> +when the Inform standard library is in a non-standard location.")
>> +    (home-page "https://jxself.org/git/inform.git")
>> +    (license license:gpl3+)))
>> +
>>  (define-public instead
>>    (package
>>      (name "instead")
>> diff --git a/gnu/packages/patches/inform-add-makefile.patch
>> b/gnu/packages/patches/inform-add-makefile.patch
>> new file mode 100644
>> index 0000000000..497d40979e
>> --- /dev/null
>> +++ b/gnu/packages/patches/inform-add-makefile.patch
>> @@ -0,0 +1,109 @@
>> +From b2332ab850dc260be8892ad5a4148b335c6b193b Mon Sep 17 00:00:00
>> 2001
>> +From: AwesomeAdam54321 <adam.faiz@disroot.org>
>> +Date: Wed, 20 Dec 2023 22:38:41 +0800
>> +Subject: [PATCH] Implement a Makefile for Inform.
>> +
>> +---
>> + Makefile.am     | 17 +++++++++++++++++
>> + configure.ac    | 40 ++++++++++++++++++++++++++++++++++++++++
>> + src/Makefile.am | 17 +++++++++++++++++
>> + 3 files changed, 74 insertions(+)
>> + create mode 100644 Makefile.am
>> + create mode 100644 configure.ac
>> + create mode 100644 src/Makefile.am
>> +
>> +diff --git a/Makefile.am b/Makefile.am
>> +new file mode 100644
>> +index 0000000..fb99417
>> +--- /dev/null
>> ++++ b/Makefile.am
>> +@@ -0,0 +1,17 @@
>> ++# This file is part of Inform.
>> ++#
>> ++# Inform is free software: you can redistribute it and/or modify it
>> ++# under the terms of the GNU General Public License as published by
>> ++# theFree Software Foundation, either version 3 of the License, or
>> ++#(at your option) any later version.
>> ++#
>> ++# Inform is distributed in the hope that it will be useful, but
>> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
>> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> ++# General Public License for more details.
>> ++#
>> ++# You should have received a copy of the GNU General Public License
>> ++# along with Inform. If not, see https://gnu.org/licenses/
>> ++
>> ++AUTOMAKE_OPTIONS = foreign
>> ++SUBDIRS = src
>> +diff --git a/configure.ac b/configure.ac
>> +new file mode 100644
>> +index 0000000..0ff8ced
>> +--- /dev/null
>> ++++ b/configure.ac
>> +@@ -0,0 +1,40 @@
>> ++# Process this file with autoconf to produce a configure script.
>> ++#
>> ++# This file is part of Inform.
>> ++#
>> ++# Inform is free software: you can redistribute it and/or modify it
>> ++# under the terms of the GNU General Public License as published by
>> ++# theFree Software Foundation, either version 3 of the License, or
>> ++#(at your option) any later version.
>> ++#
>> ++# Inform is distributed in the hope that it will be useful, but
>> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
>> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> ++# General Public License for more details.
>> ++#
>> ++# You should have received a copy of the GNU General Public License
>> ++# along with Inform. If not, see https://gnu.org/licenses/
>> ++
>> ++AC_INIT([inform], [6.41], [j@jxself.org])
>> ++AM_INIT_AUTOMAKE([foreign])
>> ++AC_OUTPUT(Makefile src/Makefile)
>> ++
>> ++# Checks for programs.
>> ++AC_PROG_CC
>> ++
>> ++# Checks for libraries.
>> ++
>> ++# Checks for header files.
>> ++AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h])
>> ++
>> ++# Checks for typedefs, structures, and compiler characteristics.
>> ++AC_CHECK_HEADER_STDBOOL
>> ++AC_TYPE_SIZE_T
>> ++
>> ++# Checks for library functions.
>> ++AC_FUNC_ERROR_AT_LINE
>> ++AC_FUNC_MALLOC
>> ++AC_FUNC_REALLOC
>> ++AC_CHECK_FUNCS([memmove memset realpath strchr strtol])
>> ++
>> ++AC_OUTPUT
>> +diff --git a/src/Makefile.am b/src/Makefile.am
>> +new file mode 100644
>> +index 0000000..b548944
>> +--- /dev/null
>> ++++ b/src/Makefile.am
>> +@@ -0,0 +1,17 @@
>> ++# This file is part of Inform.
>> ++#
>> ++# Inform is free software: you can redistribute it and/or modify it
>> ++# under the terms of the GNU General Public License as published by
>> ++# theFree Software Foundation, either version 3 of the License, or
>> ++#(at your option) any later version.
>> ++#
>> ++# Inform is distributed in the hope that it will be useful, but
>> ++# WITHOUT ANY WARRANTY; without even the implied warranty of
>> ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> ++# General Public License for more details.
>> ++#
>> ++# You should have received a copy of the GNU General Public License
>> ++# along with Inform. If not, see https://gnu.org/licenses/
>> ++
>> ++bin_PROGRAMS = inform
>> ++inform_SOURCES = arrays.c asm.c bpatch.c chars.c directs.c errors.c
>> expressc.c expressp.c files.c header.h inform.c lexer.c memory.c
>> objects.c states.c symbols.c syntax.c tables.c text.c veneer.c
>> verbs.c
>> +-- 
>> +2.41.0
>> +
> You might want to suggest this patch to upstream.  If not, you can do
> something similar by using copy-build-system and a build phase that
> reads something along the lines of
>   (apply invoke (gcc-for-target) "-o" "inform"
>          (find-files "src" "\\.c$"))
> Cheers

Thanks, I already sent this patch upstream, but I haven't gotten a response yet.
I'll send a V2 of this patch series using your copy-build-system with a build phase idea.
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f7aec83e8a..1bc955ce1f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1449,6 +1449,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/imagemagick-ReadDCMImage-fix.patch	\
   %D%/packages/patches/imagemagick-ReadDCMPixels-fix.patch	\
   %D%/packages/patches/imagemagick-WriteTHUMBNAILImage-fix.patch	\
+  %D%/packages/patches/inform-add-makefile.patch		\
   %D%/packages/patches/inkscape-poppler-compat.patch		\
   %D%/packages/patches/instead-use-games-path.patch		\
   %D%/packages/patches/intltool-perl-compatibility.patch	\
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a2d7c5ea63..0c467de23f 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -2771,6 +2771,31 @@  (define-public ioquake3
 people base their games, ports to new platforms, and other projects.")
       (license license:gpl2))))
 
+(define-public inform
+  (package
+    (name "inform")
+    (version "6.41")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://jxself.org/git/inform.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1g2misbp4lacaqa96wk0ad59ybr2dvjnhjsrz98byx4i99s2m2nr"))
+       (patches
+        (search-patches
+         "inform-add-makefile.patch"))))
+    (build-system gnu-build-system)
+    (native-inputs (list autoconf automake))
+    (synopsis "The Inform 6 compiler")
+    (description
+     "This is an Inform 6 compiler that has been modified slightly to work better
+when the Inform standard library is in a non-standard location.")
+    (home-page "https://jxself.org/git/inform.git")
+    (license license:gpl3+)))
+
 (define-public instead
   (package
     (name "instead")
diff --git a/gnu/packages/patches/inform-add-makefile.patch b/gnu/packages/patches/inform-add-makefile.patch
new file mode 100644
index 0000000000..497d40979e
--- /dev/null
+++ b/gnu/packages/patches/inform-add-makefile.patch
@@ -0,0 +1,109 @@ 
+From b2332ab850dc260be8892ad5a4148b335c6b193b Mon Sep 17 00:00:00 2001
+From: AwesomeAdam54321 <adam.faiz@disroot.org>
+Date: Wed, 20 Dec 2023 22:38:41 +0800
+Subject: [PATCH] Implement a Makefile for Inform.
+
+---
+ Makefile.am     | 17 +++++++++++++++++
+ configure.ac    | 40 ++++++++++++++++++++++++++++++++++++++++
+ src/Makefile.am | 17 +++++++++++++++++
+ 3 files changed, 74 insertions(+)
+ create mode 100644 Makefile.am
+ create mode 100644 configure.ac
+ create mode 100644 src/Makefile.am
+
+diff --git a/Makefile.am b/Makefile.am
+new file mode 100644
+index 0000000..fb99417
+--- /dev/null
++++ b/Makefile.am
+@@ -0,0 +1,17 @@
++# This file is part of Inform.
++#
++# Inform is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# theFree Software Foundation, either version 3 of the License, or
++#(at your option) any later version.
++#
++# Inform is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with Inform. If not, see https://gnu.org/licenses/
++
++AUTOMAKE_OPTIONS = foreign
++SUBDIRS = src
+diff --git a/configure.ac b/configure.ac
+new file mode 100644
+index 0000000..0ff8ced
+--- /dev/null
++++ b/configure.ac
+@@ -0,0 +1,40 @@
++# Process this file with autoconf to produce a configure script.
++#
++# This file is part of Inform.
++#
++# Inform is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# theFree Software Foundation, either version 3 of the License, or
++#(at your option) any later version.
++#
++# Inform is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with Inform. If not, see https://gnu.org/licenses/
++
++AC_INIT([inform], [6.41], [j@jxself.org])
++AM_INIT_AUTOMAKE([foreign])
++AC_OUTPUT(Makefile src/Makefile)
++
++# Checks for programs.
++AC_PROG_CC
++
++# Checks for libraries.
++
++# Checks for header files.
++AC_CHECK_HEADERS([limits.h stdlib.h string.h unistd.h])
++
++# Checks for typedefs, structures, and compiler characteristics.
++AC_CHECK_HEADER_STDBOOL
++AC_TYPE_SIZE_T
++
++# Checks for library functions.
++AC_FUNC_ERROR_AT_LINE
++AC_FUNC_MALLOC
++AC_FUNC_REALLOC
++AC_CHECK_FUNCS([memmove memset realpath strchr strtol])
++
++AC_OUTPUT
+diff --git a/src/Makefile.am b/src/Makefile.am
+new file mode 100644
+index 0000000..b548944
+--- /dev/null
++++ b/src/Makefile.am
+@@ -0,0 +1,17 @@
++# This file is part of Inform.
++#
++# Inform is free software: you can redistribute it and/or modify it
++# under the terms of the GNU General Public License as published by
++# theFree Software Foundation, either version 3 of the License, or
++#(at your option) any later version.
++#
++# Inform is distributed in the hope that it will be useful, but
++# WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++# General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with Inform. If not, see https://gnu.org/licenses/
++
++bin_PROGRAMS = inform
++inform_SOURCES = arrays.c asm.c bpatch.c chars.c directs.c errors.c expressc.c expressp.c files.c header.h inform.c lexer.c memory.c objects.c states.c symbols.c syntax.c tables.c text.c veneer.c verbs.c
+-- 
+2.41.0
+