* Build instructions for Debian 7.5::
* Installing GNUnet from Git on Ubuntu 14.4::
* Build instructions for Debian 8::
+* Build instructions for macOS::
@c * Build instructions for OpenBSD 6.2::
* Outdated build instructions for previous revisions::
@c * Portable GNUnet::
applications, but MySQL can offer better performance and Postgres better
resillience.
+@node Build instructions for macOS
+@section Build instructions for macOS
+@c FIXME: I -> we
+
+These are the installation guidelines for macOS.
+They were tested on macOS High Sierra.
+
+@menu
+* Installing dependencies::
+* Compile from Source::
+@end menu
+
+@node Installing dependencies
+@subsection Installing dependencies
+
+First, install XCode in the newest version.
+See https://developer.apple.com/xcode/.
+
+Install Homebrew (https://brew.sh) and then install the dependencies listed above.
+If a dependency does not exists in brew, you need to compile it from source.
+
+@example
+# brew install <dependency>
+@end example
+
+@node Compile from Source
+@subsection Compile from Source
+
+Before you start building GNUnet, you need to setup your environment.
+This means that you have to make sure the proper tools are used in the build process.
+For example, after installing texinfo you need to make sure the new texinfo is actually used:
+
+@example
+# echo 'export PATH="/usr/local/opt/texinfo/bin:$PATH"' >> ~/.bash_profile
+@end example
+
+Note: brew tells you the appropriate command when executing
+
+@example
+# brew info texinfo
+@end example
+
+This may also be necessary for the gettext package.
+
+Before you start compiling, you need to make sure gcc is used and not the clang compile of your macOS system.
+On my system, gcc was actually ``gcc-7'' and gcc pointed to the clang compiler.
+
+@example
+# export CC=gcc-7
+@end example
+
+After this the standard compile instructions apply.
+
@c @node Build instructions for OpenBSD 6.2
@c @section Build instructions for OpenBSD 6.2
CATALOGS = @CATALOGS@
-do_perl_subst = $(SED) -e 's,[@]PERL[@],$(PERL),g'
-
# Makevars gets inserted here. (Don't remove this line!)
.SUFFIXES:
-.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update .pl.in .pl
-
-.pl.in.pl:
- $(do_perl_subst) < $< > $@
- chmod +x $@
+.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update
.po.mo:
@echo "$(MSGFMT) -c -o $@ $<"; \
src/dns/gnunet-dns-redirector.c
src/dns/gnunet-helper-dns.c
src/dns/gnunet-service-dns.c
-src/dns/gnunet-zoneimport.c
+src/dns/gnunet-zonewalk.c
src/dns/plugin_block_dns.c
src/dv/dv_api.c
src/dv/gnunet-dv.c
src/gns/gns_tld_api.c
src/gns/gnunet-bcd.c
src/gns/gnunet-dns2gns.c
+src/gns/gnunet-gns-benchmark.c
src/gns/gnunet-gns-helper-service-w32.c
src/gns/gnunet-gns-import.c
src/gns/gnunet-gns-proxy.c
src/social/gnunet-social.c
src/social/social_api.c
src/sq/sq.c
+src/sq/sq_exec.c
+src/sq/sq_prepare.c
src/sq/sq_query_helper.c
src/sq/sq_result_helper.c
src/statistics/gnunet-service-statistics.c
src/util/container_multipeermap.c
src/util/container_multishortmap.c
src/util/crypto_abe.c
+src/util/crypto_bug.c
src/util/crypto_crc.c
src/util/crypto_ecc.c
src/util/crypto_ecc_dlog.c
src/vpn/gnunet-service-vpn.c
src/vpn/gnunet-vpn.c
src/vpn/vpn_api.c
+src/zonemaster/gnunet-service-zonemaster-monitor.c
src/zonemaster/gnunet-service-zonemaster.c
src/fs/fs_api.h
src/include/gnunet_common.h