pkgsrc/lang/erlang/Makefile
fhajny 1ae94db05e Update lang/erlang* to 20.2.
Some highlights:

crypto, ssl:
- The crypto API is extended to use private/public keys
  stored in an Engine for sign/verify or encrypt/decrypt
  operations.
- The ssl application provides an API to use this new
  engine concept in TLS.

ssh:
- SSH can now fetch the host key from the private keys
  stored in an Engine. See the crypto application for
  details about Engines.

ssl:
- A new command line option -ssl_dist_optfile has been
  added to facilitate specifying the many options needed
  when using SSL as the distribution protocol.

stdlib:
- Improve performance of the new string functionality
  when handling ASCII characters.

Full release notes:

  http://www.erlang.org/download/otp_src_20.2.readme
2017-12-13 14:45:20 +00:00

94 lines
2.4 KiB
Makefile

# $NetBSD: Makefile,v 1.83 2017/12/13 14:45:20 fhajny Exp $
DISTNAME= otp_src_${DIST_VERSION_MAJOR}.${DIST_VERSION_MINOR}
PKGNAME= ${DISTNAME:S/otp_src_/erlang-/}
CATEGORIES= lang
MASTER_SITES= http://www.erlang.org/download/
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.erlang.org/
COMMENT= Concurrent functional programming language
LICENSE= apache-2.0
DIST_SUBDIR= erlang
GNU_CONFIGURE= yes
USE_GNU_CONFIGURE_HOST= ${USE_CROSS_COMPILE}
OVERRIDE_DIRDEPTH= 4
USE_TOOLS+= gmake perl:run flex
CONFIGURE_ARGS+= --with-ssl=${BUILDLINK_PREFIX.openssl}
PTHREAD_OPTS+= require native
CONFIGURE_ARGS+= --enable-threads
.include "../../mk/bsd.prefs.mk"
# have gcc without the necessary atomic ops?
.if !empty(MACHINE_PLATFORM:MNetBSD-[56].*)
# a machine without native ethread implementation?
. if empty(MACHINE_PLATFORM:M*i386) &&\
empty(MACHINE_PLATFORM:M*sparc) &&\
empty(MACHINE_PLATFORM:M*sparc64) &&\
empty(MACHINE_PLATFORM:M*powerpc) &&\
empty(MACHINE_PLATFORM:M*x86_64)
CONFIGURE_ARGS+= --disable-native-ethr-impls\
--disable-smp-require-native-atomics
. endif
.endif
MAKE_ENV+= DESTDIR=${DESTDIR}
REPLACE_INTERPRETER+= escript
REPLACE.escript.old= .*escript
REPLACE.escript.new= ${PREFIX}/bin/escript
REPLACE_FILES.escript= \
lib/diameter/bin/diameterc \
lib/erl_docgen/priv/bin/codeline_preprocessing.escript \
lib/erl_docgen/priv/bin/xml_from_edoc.escript \
lib/reltool/examples/display_args \
lib/reltool/examples/mnesia_core_dump_viewer \
lib/snmp/bin/snmpc \
lib/snmp/src/compile/snmpc.src
SUBST_CLASSES+= target
SUBST_STAGE.target= post-patch
SUBST_FILES.target= make/target.mk
SUBST_SED.target= -e "s|=.*config.guess)|= ${MACHINE_GNU_PLATFORM}|"
SUBST_MESSAGE.target= Fixing target name.
TEST_TARGET= tests
TEST_MAKE_FLAGS= ERL_TOP=${WRKSRC}
REPLACE_PERL+= make/make_emakefile
SMF_NAME= epmd
CONFIGURE_ARGS.DragonFly+= --disable-sctp
###
### XXX There may be others here.
###
.if ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD" || ${OPSYS} == "Darwin"
CONFIGURE_ARGS+= --enable-kernel-poll
.endif
.include "options.mk"
.include "Makefile.versions"
###
### Ensure this gets rebuilt.
###
pre-build:
${RUN} ${RM} -f ${WRKSRC}/lib/stdlib/ebin/dets_v9.beam
post-install:
chmod -R go-w ${DESTDIR}${PREFIX}/lib/erlang/lib
.include "../../security/openssl/buildlink3.mk"
.include "../../mk/termcap.buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"