The Makefile summarizes the steps to build and package LibreOffice 4.x for NetBSD using pkgsrc. It specifies the version as 4.1.3.2, sets categories and maintainer, defines extraction and build directories, lists additional files to download, and sets configuration options like disabling unneeded features to optimize the build.
Docker and .NET Core - Best Friends Forever - Michael Newton - Codemotion Rom...Codemotion
The .NET languages have always been top notch in design, with a wide ranging standard library and support for all your enterprise needs. But for those of us with experience in the world outside Windows, the operational side of things was unbelievably painful. Now, with .NET Core that's starting to change. Here we'll work through the process of taking a .NET library and building a CI pipeline from reproducible container based builds through to minimal deployment artifacts.
Profile all the things! - Capital Go 2017John Potocny
This presentation gives an overview of the different types of profiling available in Go via the runtime/pprof package, and provides a brief look at the possible future for profiling in Go1.9 and later.
Rust + python: lessons learnt from building a toy filesystemChengHui Weng
In this slides I listed what I have learnt when I was working on my toy FUSE based file system in Rust for Python. By using PyO3, to bind Rust with Python becomes really easy, but the unavoidable type conversions affect the whole Rust code design and efficiency.
This is as a lighting talk for WebHack#16 meet up: https://webhack.connpass.com/event/99735/
Noah Zoschke took to the Waza 2013 stage to present "Heroku Secrets". For more from Zoschke, ping him at @nzoschke. For more on Waza visit http://waza.heroku.com/2013.
For Waza videos stay tuned at http://blog.heroku.com or visit http://vimeo.com/herokuwaza
Performing quantitative software analytics studies can be an immensely rewarding activity for scientists performing empirical research. However, such studies often pose numerous engineering challenges. The researcher must hunt down appropriate data sets, devise bespoke collection and processing tools, and optimise performance to match the size of the collected data. I will discuss principles and strategies that can be used to deal with these problems, and present examples of associated tools and techniques. Some particularly effective strategies associated with data set construction involve recursion, web searching, synthesis, probing, instrumentation, and the nurturing of alliances. On the processing front approaches include the opportunistic scavenging of tool front-ends, the exploratory development of pipelines, as well as the exploitation of tool interoperability, scripting languages, and their rich libraries. The required performance can be obtained through parallelism, stream processing, the judicious use of low-level facilities, and the choice of appropriate samples. I will finish the presentation with an overview of open problems and challenges in software analytics in vertical domains, data analysis, and under-represented stakeholders.
Performance Wins with BPF: Getting StartedBrendan Gregg
Keynote by Brendan Gregg for the eBPF summit, 2020. How to get started finding performance wins using the BPF (eBPF) technology. This short talk covers the quickest and easiest way to find performance wins using BPF observability tools on Linux.
Explains how Docker and Nix work as deployment solutions, in what ways they are similar and different, and how they can be combined to achieve interesting results.
Docker and .NET Core - Best Friends Forever - Michael Newton - Codemotion Rom...Codemotion
The .NET languages have always been top notch in design, with a wide ranging standard library and support for all your enterprise needs. But for those of us with experience in the world outside Windows, the operational side of things was unbelievably painful. Now, with .NET Core that's starting to change. Here we'll work through the process of taking a .NET library and building a CI pipeline from reproducible container based builds through to minimal deployment artifacts.
Profile all the things! - Capital Go 2017John Potocny
This presentation gives an overview of the different types of profiling available in Go via the runtime/pprof package, and provides a brief look at the possible future for profiling in Go1.9 and later.
Rust + python: lessons learnt from building a toy filesystemChengHui Weng
In this slides I listed what I have learnt when I was working on my toy FUSE based file system in Rust for Python. By using PyO3, to bind Rust with Python becomes really easy, but the unavoidable type conversions affect the whole Rust code design and efficiency.
This is as a lighting talk for WebHack#16 meet up: https://webhack.connpass.com/event/99735/
Noah Zoschke took to the Waza 2013 stage to present "Heroku Secrets". For more from Zoschke, ping him at @nzoschke. For more on Waza visit http://waza.heroku.com/2013.
For Waza videos stay tuned at http://blog.heroku.com or visit http://vimeo.com/herokuwaza
Performing quantitative software analytics studies can be an immensely rewarding activity for scientists performing empirical research. However, such studies often pose numerous engineering challenges. The researcher must hunt down appropriate data sets, devise bespoke collection and processing tools, and optimise performance to match the size of the collected data. I will discuss principles and strategies that can be used to deal with these problems, and present examples of associated tools and techniques. Some particularly effective strategies associated with data set construction involve recursion, web searching, synthesis, probing, instrumentation, and the nurturing of alliances. On the processing front approaches include the opportunistic scavenging of tool front-ends, the exploratory development of pipelines, as well as the exploitation of tool interoperability, scripting languages, and their rich libraries. The required performance can be obtained through parallelism, stream processing, the judicious use of low-level facilities, and the choice of appropriate samples. I will finish the presentation with an overview of open problems and challenges in software analytics in vertical domains, data analysis, and under-represented stakeholders.
Performance Wins with BPF: Getting StartedBrendan Gregg
Keynote by Brendan Gregg for the eBPF summit, 2020. How to get started finding performance wins using the BPF (eBPF) technology. This short talk covers the quickest and easiest way to find performance wins using BPF observability tools on Linux.
Explains how Docker and Nix work as deployment solutions, in what ways they are similar and different, and how they can be combined to achieve interesting results.
go-git is a 100% Go libray used to interact with git repositories. Even if it already supports most of the functionality it still lags a bit in performance when compared with the git CLI or some other libraries. I'll explain some of the problems that we face when dealing with git repos and some examples of performance improvements done to the library.
Linux kernel tracing superpowers in the cloudAndrea Righi
The Linux 4.x series introduced a new powerful engine of programmable tracing (BPF) that allows to actually look inside the kernel at runtime. This talk will show you how to exploit this engine in order to debug problems or identify performance bottlenecks in a complex environment like a cloud. This talk will cover the latest Linux superpowers that allow to see what is happening “under the hood” of the Linux kernel at runtime. I will explain how to exploit these “superpowers” to measure and trace complex events at runtime in a cloud environment. For example, we will see how we can measure latency distribution of filesystem I/O, details of storage device operations, like individual block I/O request timeouts, or TCP buffer allocations, investigating stack traces of certain events, identify memory leaks, performance bottlenecks and a whole lot more.
Similar to LibreOffice 4 under NetBSD with pkgsrc (en) (20)
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
20 Comprehensive Checklist of Designing and Developing a WebsitePixlogix Infotech
Dive into the world of Website Designing and Developing with Pixlogix! Looking to create a stunning online presence? Look no further! Our comprehensive checklist covers everything you need to know to craft a website that stands out. From user-friendly design to seamless functionality, we've got you covered. Don't miss out on this invaluable resource! Check out our checklist now at Pixlogix and start your journey towards a captivating online presence today.
20 Comprehensive Checklist of Designing and Developing a Website
LibreOffice 4 under NetBSD with pkgsrc (en)
1. LibreOffice 4 under NetBSD
(with pkgsrc)
Ryo ONODERA
<ryoon@NetBSD.org>
2013-11-18
Kanto Region LibreOffice Offline Meeting#10
2. Who am I?
●
Name: Ryo ONODERA
●
E-mail: ryo_on@yk.rim.or.jp / ryoon@NetBSD.org
●
Twitter: @ryo_on
●
pkgsrc developer since 2010
●
●
Working on LibreOffice under NetBSD for pkgsrc since
2013-09-15
http://pkgsrc.se/bbmaint.php?maint=ryoon@NetBSD.org
shows my maintainerships of pkgsrc packages
2
3. Abstract
●
●
●
●
Successfully built LibreOffice 4.1.1.2 under
NetBSD/amd64 and NetBSD/i386
To share build procedure, I have written pkgsrc Makefile
Under NetBSD 6.*, LibreOffice works properly, but
LibreOffice under NetBSD 5.2.* is not working properly
now
Now pkgsrc has LibreOffice 4.1.3.2 in its tree
3
4. What is NetBSD?
●
●
NetBSD is one of Berkeley Software Distribution (BSD)’s
derivatives.
The other BSD is show blow
–
–
OpenBSD
–
DragonFly
–
●
FreeBSD
MirBSD etc.
These BSD has its own kernel, and not like Linux
distributions (they does not share kernel).
4
5. What is pkgsrc?
●
●
Originally, FreeBSD’s Ports had ported to NetBSD
Pkgsrc is cross-platform. It is ported to 21 platforms (shown in release
announcement of pkgsrc-2013Q3 branch)
–
●
●
AIX, BSD/OS, Cygwin, OS X, DragonFly, FreeBSD, FreeMiNT,
GNU/kFreeBSD, HP-UX, Haiku, IRIX, Interix/SFU/SUA, Linux, Minix3,
MirBSD, NetBSD, OSF1, OpenBSD, QNX, Solaris/illumos, UnixWare
To use a package, cd to pkgsrc/category/packagename directory, and type make
install. Then source tarball is fetched, built, and installed.
Every 3-month, stable branch is released. Most recent stable branch is pkgsrc2013Q3 and it is released 2013-09-30.
5
7. File for llibreoffice4 package
# $NetB SD: Makefi le,v 1.6 2013/11/03 03:40:49 ryoon E xp $
V ER=
4. 1.3.2
DISTNA M =libreoff ice-${V ER}
E
P KGNA M =libreoff ice4-${VE R}
E
CAT GORIE S=misc
E
MAS T R_SITE S= http: //download. documentfoundation.org/l ibreoffice/src/4.1.3/
E
E XT CT_S UFX= . tar.xz
RA
MAINT INER= ryoon@NetB SD.org
A
HOMEP AGE = http: //www.li breoffice.org/
COMM NT= Office productivi ty suit e, 4.x branch
E
LI CE NS E= gnu-lgpl-v3
# Wit h -O2, when preference window i s opened, soffice.bin crashes with S IGFPE .
.include "../. ./mk/bsd.prefs.mk"
.if !empty(MACHINE _P LA T
FORM:M
NetB S D-5.*)
B UILDLINK _TRANSFORM rename:-O2: -O
+=
.endif
# LibreOfice's M
akefile has its own pararell build mechanism. A void conflict.
MAK E_JOBS _S A F no
E=
CHE CK _S HLIB S_SUPP ORTED= no
●
DIST_S UB DI R=li breoff ice
P YT
HON_VE RSIONS _A CCE P T D= 33
E
LO_B OOT T P= ${DI STNAME}
S RA
LO_COMP ONE NTS= dict ionari es hel p translati ons
DISTF
ILES +=
${LO_B OOTST P}${E XTRA CT_S UFX }
RA
E XT CT_ONLY= ${LO_B OOTSTRA P}${E X T CT UFX }
RA
RA _S
.for com
ponent in ${LO_COM ONE NT
P
S}
DISTF
ILES +=
l ibreoff ice-${component}-${V ER}.tar.xz
E XT CT_ONLY+=
RA
libreoff ice-${component}-${V ER}.t ar.xz
.endfor
MORE_DIS T
FILES =
0168229624cfac409e766913506961a8-ucpp-1.3. 2.tar.gz
0279a21fab6f245e85a6f 85f ea54f511-source-code-font-1.009.t ar.gz
0be45d54cc5e1c2e3102e32b8c190346-liberation-fonts-ttf -1.07.1.tar.gz
5c781723a0d9ed6188960defba8e91cf-liberati on-fonts-ttf-2.00.1.t ar.gz
1756c4fa6c616ae15973c104cd8cb256-Adobe-Core35_A F s-314.t ar.gz
M
1e9ddfe25ac9577da709d7b2ea36f939-source-sans-font-1.036.tar.gz
1f 24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
2a177023f9ea8ec8bd00837605c5df 1b-jakarta-tomcat-5.0. 30-src. tar. gz
625ff5f2f 968dd908bca43c9469d6e6b-com
mons-l ang-2.4-src.t ar.gz
2c9b0f83ed5890af02c0df1c1776f 39b-com
mons-httpcli ent -3.1-src.tar.gz
3404ab6b1792ae5f16bbd603bd1e1d03-libf ormula-1. 1.7.zi p
35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
35efabc239af896dfb79be7ebdd6e6b9-gent iumbasic-fonts-1.10.zip
39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip
3bdf40c0d199af31923e900d082ca2dd-libfonts-1. 1.6.zi p
3c219630e4302863a9a83d0ef de889db-commons-logging-1.1.1-src. tar. gz
46e92b68e31e858512b680b3b61dc4c1-m
ythes-1.2. 3.t ar.gz
36271d3fa0d9dec1632029b6d7aac925-libl angtag-0. 5.1.tar.bz2
798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip
7a15edea7d415ac5150ea403e27401fd-open-sans-font -ttf-1.10.tar.gz
8ce2f cd72becf 06c41f7201d15373ed9-l ibrepository-1.1.6.zip
97b2d4dba862397f446b217e2b623e71-libl oader-1.1.6. zip
b85436266b2ac91d351ab5684b181151-libwpg-0.2.2.tar.bz2
a2f6010987e1c601274ab5d63b72c944-hyphen-2.8.4.tar.gz
a7983f859eafb2677d7ff386a023bc40-xsltml_2.1. 2.zip
ace6ab49184e329db254e454a010f56d-libxm -1.1.7. zip
l
Only Makefile is shown in
left column of this page.
2e482c7567908d334785ce7d69ddff f7-comm
ons-codec-1. 6-src.tar.gz
ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
b2371dc7cf 4811c9d32146eec913d296-libcm s-0.3.0.tar.gz
i
c3c1a8ba7452950636e871d25020ce0d-pt-serif-font-1.0000W.tar.gz
46eb0e7f213ad61bd5dee0c494132cb0-libwps-0. 2.9.tar.bz2
db60e4fde8dd6d6807523deb71ee34dc-libl ayout-0.2.10.zi p
d8bd5eed178db6e2b18eeed243f85aa8-flut e-1.1.6.zi p
e7a384790b13c29113e22e596ade9687-LinLibert ineG-20120116.zip
ea570af93c284aa9e5621cd563f54f4d-bsh-2.0b1-src.tar.gz
eeb2c7ddf0d302f ba4bfc6e97eac9624-l ibbase-1.1.6. zip
f872f4ac066433d8ff92f5e316b36f f9-dej avu-fonts-ttf-2.33.zip
f94d9870737518e3b597f9265f 4e9803-l ibserializer-1.1. 6.zip
libcdr-0.0.14.tar.bz2
libm
spub-0. 0.6.tar.bz2
8473296c671b6e3dd8197f4145e0854b-libodfgen-0.0.2.tar.bz2
b63e6340a02ff 1cacf eadb2c42286161-JLanguageT
ool-1.7.0.tar.bz2
05f84c95b610c21c5fd510d10debcabf-mari adb-native-client-1.0.0.tar.bz2
08c85a6d6d793daee14e10e22eefdc4b-m
dds_0.8.1. tar.bz2
ea91f 2fb4212a21d708aced277e6e85a-vigra1. 4.0.tar.gz
185d60944ea767075d27247c3162b3bc-unowinreg.dll
# libm
waw-0. 1.10.t ar.bz2
# 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0. zip
# ac4781e01619be13461bb2d562b94a7b-cppunit-1.13.1.tar.gz
# ea2acaf 140ae40a87a952caa75184f 4d-liborcus-0.5.1.tar.bz2
# 26b3e95ddf 3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz
# libvisio-0.0. 28. tar.bz2
# 972afb8fdf02d9e7517e258b7fa7f0eb-libwpd-0.9.8.tar.bz2
# ae330b9493bd4503ac390106f f6060d7-libextt extcat-3.4.3. tar. bz2
.for md in ${M
ORE_DIS T
FILE S}
DISTF
ILES +=
${m
d}
S IT S.${md}=
E
http: //dev-www. libreoff ice.org/src/
.endfor
DISTF
ILES +=e7a384790b13c29113e22e596ade9687-LinLiberti neG-20120116. zip
S IT S.e7a384790b13c29113e22e596ade9687-LinLiberti neG-20120116. zip=htt p:// www. num
E
bertext.org/ linux/
DISTF
ILES +=185d60944ea767075d27247c3162b3bc-unowi nreg.dll
S IT S.185d60944ea767075d27247c3162b3bc-unowi nreg.dl l=http: //download.go-oo.org/ extern/
E
.include "options. m
k"
.include "../. ./mk/bsd.prefs.mk"
# tar: Invalid header, starting valid header search.
E XT CT_USI NG=
RA
WRK SRC=
gtar
${WRK DIR}/${LO_BOOT T
S RAP }
B UILD_DE PE NDS +=
p5-A rchive-Zip-[0-9]*:. ./../ archivers/p5-Archi ve-Z
ip
# dm
ake script s use relative path with -rpath-l ink ld argument s, whi ch
# is a no-go wi th norm pkgsrc wrappers.
al
# dm
ake is slowl y beeing removed from the LibreOf fice build process
# and thi s option wil l hopef ully becom unneeded in the f uture
e
WRA PP E R_SK IP _T NS F
RA
ORM
=yes
USE _LA NGUA GE S+=
USE _LI BTOOL=
c c++
yes
# GUN t ar i s real ly needed. S ome Makefil es depends on GNUTAR.
USE _T
OOLS +=
autom
ake bash bison gmake gt ar perl pkg-config unzip zip
PT
HRE AD_OP T +=
S
require
HAS _CONF
IGURE =
yes
# Do not use /t m outsi de of WRK SRC.
p,
CONF
IGURE _E NV +=
T P DIR=${WRK SRC}/ tmp
M
CONF
IGURE _A RGS+=
--prefix=${DE S T
DIR}${P RE F X}/ ${P KGNA ME_NOREV }
I
CONF
IGURE _A RGS+=
--disable-ccache
CONF
IGURE _A RGS+=
--disable-dbus
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--disable-epm
--disable-fetch-external
--disable-gconf
CONF
IGURE _A RGS+=
--disable-gnom s
e-vf
CONF
IGURE _A RGS+=
--disable-kde4
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--disable-lockdown
--disable-odk
CONF
IGURE _A RGS+=
--disable-opengl
CONF
IGURE _A RGS+=
--disable-randr-l ink
CONF
IGURE _A RGS+=
--disable-systray
●
But it is too long to see
your eyes.
# Enabli ng crashrep causes error. Non-offi cial build does not need it.
CONF
IGURE _A RGS+=
--disable-crashdump
CONF
IGURE _A RGS+=
--enabl e-ext-presenter-m
inimizer
# Enabli ng GIO causes error. losessioninstal l.com
ponent not found.
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--disable-gio
--enabl e-gstreamer
CONF
IGURE _A RGS+=
--enabl e-gtk3
CONF
IGURE _A RGS+=
--enabl e-l ockdown
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--enabl e-odk
--enabl e-python=system
#CONF GURE _ARGS += --enabl e-release-build
I
CONF
IGURE _A RGS+=
--enabl e-ext-wiki-publi sher
CONF
IGURE _A RGS+=
--enabl e-ext-nlpsol ver
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-alloc=system
--wi th-compat-oowrappers
CONF
IGURE _A RGS+=
--wi th-ext ernal-t ar=${DISTDIR}/${DIS T UBDIR}
_S
CONF
IGURE _A RGS+=
--wi th-f onts
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-l ang="ALL"
--wi th-myspell-dict s
--wi th-parallelism
=${MAK E _JOB S:Q}
CONF
IGURE _A RGS+=
--wi th-system-clucene
CONF
IGURE _A RGS+=
--wi th-system-li bxml
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-boost
--wi th-boost-libdir=${B UILDLINK_PREFIX .boost-libs}/ lib
CONF
IGURE _A RGS+=
--wi th-system-cairo
CONF
IGURE _A RGS+=
--wi th-system-curl
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-dicts
--wi th-system-expat
--wi th-system-harfbuzz
CONF
IGURE _A RGS+=
--wi th-system-hunspel l
CONF
IGURE _A RGS+=
--wi th-system-icu
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-jars
--wi th-system-jpeg
--wi th-system-lcm
s2
CONF
IGURE _A RGS+=
--wi th-system-li bexttextcat
CONF
IGURE _A RGS+=
--wi th-system-li bpng
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-li bvi sio
--wi th-system-li bwpd
CONF
IGURE _A RGS+=
--wi th-system-li bxml
CONF
IGURE _A RGS+=
--wi th-system-lpsolve
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-mesa-headers
--wi th-system-nss
--wi th-system-openldap
CONF
IGURE _A RGS+=
--wi th-system-openssl
CONF
IGURE _A RGS+=
--wi th-system-li bmwaw
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-orcus
--wi th-system-poppler
CONF
IGURE _A RGS+=
--wi th-system-post gresql
CONF
IGURE _A RGS+=
--wi th-system-redland
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi th-system-neon
--wi th-system-zlib
--wi thout-system-beanshell
# internal vi gra should be used for effective developement.
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi thout-system-vigra
--wi th-vendor="pkgsrc"
--wi thout-doxygen
CONF
IGURE _A RGS+=
--wi thout-junit
CONF
IGURE _A RGS+=
--wi thout-krb5
CONF
IGURE _A RGS+=
CONF
IGURE _A RGS+=
--wi thout-gssapi
--wi thout-system-apache-com
mons
CONF
IGURE _A RGS+=
--wi th-system-cppunit
CONF
IGURE _A RGS+=
--wi thout-system-jf reereport
# internal sane should be used for effective developement.
CONF
IGURE _A RGS+=
--wi thout-system-sane
CONF
IGURE _A RGS+=
--wi thout-system-servl et-api
# m REP LA CE_PE RL are needed.
ore
REP LA CE _P E RL=sd/res/ webvi ew/editpic.pl
REP LA CE _P E RL+= sd/res/ webview/poll.pl
REP LA CE _P E RL+= sd/res/ webview/savepic. pl
REP LA CE _P E RL+= sd/res/ webview/show.pl
REP LA CE _P E RL+= sd/res/ webview/webview.pl
LO_P ROGRA MS=
sbase scalc sdraw simpress sm soffi ce swriter
ath
# Base depends on java, we don't i nst all t he icon
LO_DES K T
OP_F
ILES =
calc.desktop draw.desktop im
press.desktop math.desktop
st artcent er.desktop writer.desktop
CONF
IGURE _S CRIP T
=
./autogen.sh
MAK E_ENV+=
ROOT_USE R=${ROOT_USE R}
MAK E_ENV+=
ROOT_GROUP =${ROOT
_GROUP }
B UILD_M KE _F GS += VE RB OSE =yes
A
LA
B UILD_T RGE T
A
=
dev-install
B UILDLINK _TRANSFORM rm -ldl
+= :
INSTALLA T
ION_DIRS =
bin share/applicati ons
post-extract :
${M DIR} -p ${WRK SRC}/src
K
.for md in ${M
ORE_DIS T
FILE S}
${LN} -s ${DIS T
DIR}/${DIS T
_SUB DIR}/${m ${WRK S RC}/src/${m
d}
d}
.endfor
mkdir ${WRKS RC}/tm
p
do-instal l:
cd ${WRKS RC} && make install
post-i nst all:
.for f i n ${LO_P ROGRA M }
S
cd ${DE STDIR}${P RE F }/bin & & ${LN} -s ../${PK GNA M _NORE V }/program ${f}
IX
E
/
.endfor
.for f i n ${LO_DE SK T
OP_F
ILES }
cd ${DE STDIR}${P RE F }/share/applications & & ${LN} -s ${DES T
IX
DIR}${PREFIX }/${PK GNA M _NORE V}/share/ xdg/${f}
E
.endfor
.include "../. ./convert ers/ libvisi o/buil dlink3. m
k"
.include "../. ./convert ers/ libwpd/buildlink3.mk"
.include "../. ./convert ers/ libwpg/buildlink3.mk"
.include "../. ./convert ers/ libwps/buildlink3.mk"
.include "../. ./convert ers/ libmwaw/buildlink3.mk"
.include "../. ./convert ers/ orcus/ bui ldl ink3.mk"
.include "../. ./databases/ db4/buildlink3. m
k"
.include "../. ./databases/ openldap-cl ient/buildl ink3.mk"
.include "../. ./databases/ shared-mime-info/buil dlink3.mk"
.include "../. ./databases/ uni xodbc/buildlink3.mk"
.include "../. ./mk/pgsql.buildlink3. m
k"
.include "../. ./devel/boost-libs/buil dli nk3.m
k"
.include "../. ./devel/cppunit/ bui ldli nk3.mk"
.include "../. ./devel/gperf /buildl ink3.mk"
.include "../. ./devel/li bexeci nfo/buildlink3.mk"
.include "../. ./devel/nss/buil dlink3.mk"
.include "../. ./devel/zlib/buil dlink3.mk"
.include "../. ./fonts/fontconfi g/buildlink3.m
k"
.include "../. ./fonts/harfbuzz/buildl ink3.mk"
.include "../. ./mk/j peg.buildl ink3.mk"
.include "../. ./graphics/cairo/buildl ink3.mk"
.include "../. ./graphics/freetype2/buil dlink3. m
k"
.include "../. ./graphics/gdk-pixbuf2-xlib/ buil dlink3.m
k"
.include "../. ./graphics/lcm
s2/buildlink3.m
k"
.include "../. ./graphics/librsvg/buil dli nk3.m
k"
.include "../. ./graphics/png/buil dlink3.mk"
#. incl ude ".. /../graphi cs/sane-backends/bui ldli nk3.mk"
#. incl ude ".. /../graphi cs/vigra/buildlink3.m
k"
.include "../. ./lang/python/appli cat ion.mk"
.include "../. ./math/lp_solve/buildl ink3.mk"
.include "../. ./mult im
edia/gstream
er0.10/bui ldli nk3.mk"
.include "../. ./mult im
edia/gst-pl ugi ns0.10-base/buildl ink3.mk"
.include "../. ./mult im
edia/gstream
er1/buildli nk3.mk"
.include "../. ./mult im
edia/gst-pl ugi ns1-base/buildl ink3.mk"
.include "../. ./print /cups/buil dlink3.mk"
.include "../. ./print /poppler-cpp/ bui ldl ink3.mk"
.include "../. ./print /poppler-includes/buil dlink3. m
k"
.include "../. ./sysutils/deskt op-file-ut ils/ desktopdb.mk"
.include "../. ./textproc/expat /buildl ink3.mk"
.include "../. ./textproc/hunspell /buildlink3.mk"
.include "../. ./textproc/icu/buildlink3. m
k"
.include "../. ./textproc/libclucene/bui ldli nk3.m
k"
.include "../. ./textproc/libxml2/buil dli nk3.m
k"
.include "../. ./textproc/libxsl t/buildlink3. m
k"
.include "../. ./textproc/redland/buil dli nk3.m
k"
.include "../. ./textproc/libext textcat/buildlink3.mk"
.include "../. ./textproc/m
ythes/buil dli nk3.m
k"
.include "../. ./www/curl/buil dlink3.mk"
.include "../. ./www/neon/buildl ink3.mk"
.include "../. ./x11/ gtk2/buildlink3.mk"
.include "../. ./x11/ gtk3/buildlink3.mk"
.include "../. ./x11/ libX 11/buildl ink3.mk"
.include "../. ./x11/ libX cursor/buildlink3. m
k"
.include "../. ./x11/ libX ext/buildlink3. m
k"
.include "../. ./x11/ libX fixes/ bui ldli nk3.mk"
.include "../. ./x11/ libX i/buildlink3. m
k"
.include "../. ./x11/ libX inerama/ bui ldl ink3.mk"
.include "../. ./x11/ libX randr/ bui ldli nk3.mk"
.include "../. ./x11/ libX render/buildlink3. m
k"
.include "../. ./x11/ libX t/buildlink3. m
k"
.include "../. ./mk/dlopen. bui ldli nk3.mk"
.include "../. ./mk/pthread.buildl ink3.mk"
.include "../. ./mk/bsd.pkg.mk"
7
8. Abstruct of build process
●
●
In Kanto region LibreOffice Offline Meeting #8, the following wiki page is shown.
Basically my procedure is as same as it.
https://wiki.documentfoundation.org/Development/BuildingOnLinux
I have decided to build LibreOffice from tarball of 4.1.1.2. For pkgsrc, build from
tarball is easiest.
–
–
libreoffice-help-4.1.1.2.tar.xz
–
●
libreoffice-dictionaries-4.1.1.2.tar.xz
–
●
libreoffice-4.1.1.2.tar.xz
libreoffice-translations-4.1.1.2.tar.xz
Pkgsrc has packages for LibreOffice 3. I have not tested them yet, but I will use
their Makefile for my LibreOffice 4 package
(pkgsrc/misc/libreoffice、pkgsrcl/wip/libreoffice、pkgsrc/wip/libreoffice-devel)。
Develop under NetBSD/amd64 6.99.23 (aka current), and confirm other platforms
8
9. Study on autogen.sh
●
In short, generate configure from configure.ac
●
And pass its arguments to configure shell script
●
●
pkgsrc Makefile should have following lines.
HAS_CONFIGURE=yes
CONFIGURE_SCRIPT=./autogen.sh
Configure is re-generated from configure.ac every run of
autogen.sh, so patch to configure is non-sense.
9
10. Study on configure
●
At first, run ./configure –help and investigate output of it.
–
Pkgsrc has GNU_CONFIGURE=yes option for configure script from GNU
Autotools. But in this case, I have choose HAS_CONFIGURE=yes
(because configure is not directly invoked)
–
Many and many LibreOffice specific options (--disable-odk etc.)
Many and many --with-system-* options. With this option. We can
choose internal/external libraries.
● Most important option for pkgsrc. --disable-fetch-external disable tarball
downloading during build. For pkgsrc, all tarball should be downloaded
previously.
Look inside configure and configure.ac
●
●
–
Some test clauses use == instead of =. This should be fixed for portability.
10
11. First trial
●
●
●
●
harfbuzz library is needed and it should be support icu.
pkgsrc’s harfbuzz had not supported icu by default. I have
changed pkgsrc’s default option for harfbuzz to enable icu
by default.
Side effect of disabling downloading. Run make build and I
have gotten tarball lacking messages.
I had fixed one by one. But it is very inefficient. It takes
about 15 minutes for one fix.
I have done grep -R not-found-tarball-name, I have found
download.lst file, that is a list of tarball.
11
12. First fix
●
●
●
●
●
Convert download.lst to pkgsrc Makefile, and I have found
some libraries are in pkgsrc, and set –with-system-*.
Change prefix to /usr/pkg/libreoffice4-4.1.1.2
LibreOffice’s tarballs need BSD tar/GNU tar. NetBSD’s
default tar (libarchive based one) is not sufficient.
LibreOffice’s buid process needs GNU tar, and I have
decided to use GNU tar for extract tarballs.
I have written Java option conditional, but it has typo and
Java option is always off...
12
13. Second trials
●
●
●
●
●
●
●
Some errors are fixed.
e7a384790b13c29113e22e596ade9687-LinLibertineG-20120116.zip is needed.
Download from http://www.numbertext.org/linux/ .
Object files etc is created under /tmp. In pkgsrc way, all working files should be
located under ${WRKDIR}. So I have defined CONFIGURE_ENV+=TMPDIR=$
{WRKSRC}/tmp (WRKSRC is subdirectory of WRKDIR)
Some libraries need the patches for NetBSD build. Such libraries are set –withsystem-* and built outside of LibreOffice build. (Now I know patching procedure for
internal libraries)
It seems that some functionalities are not useful for non official build (--disablecrashdump) or I cannot fix the error (--disable-gio).
According to Arch Linux’s PKGBUILD, for sane and vigra, only include file is needed.
So I convert these libraries to internal.
Doxygen is also disabled explicitly.
13
14. Errors and patches
●
Build progress, but
●
There are some errors. These errors are fixed with patches.
–
–
●
rsc (resource compiler?) command dislike -pthread option that is derived
from CFLAGS. Remove CFLAGS from rsc commandline patches/patchsolenv_gbuild_AllLangResTarget.mk
When installing some files, install command specifies user/group = root/root.
For unprivileged build, use user’s UID/GID instead. patches/patchsysui_CustomTarget__slackware.mk (NetBSD build use Slackware makefile)
Some libraries cannot build without patches, These libraries are convert to –
with-system-*.
14
15. First successful build
●
●
●
Non-Java and non language pack version of LibreOffice is
build successfully.
Pkgsrc has PLIST file that lists all installed files. I have
created it.
Windows size is odd, but it seems that each LinreOffice
applications work properly.
15
16. For second successful build
●
●
●
●
●
Java support conditional in pkgsrc Makefile is fixed. It is pasto.
LibreOffice 4 needs hsqldb 1.8.x, but 1.8.x is not built with OpenJDK7. And pkgsrc
has only OpenJDK7, no OpenJDK6.
LibreOffice 4 requires hsqldb.jar only, hsqljdbc.jar or other libraries are not required.
So I have decided to use official distribution of 1.8.x of hsqldb.
185d60944ea767075d27247c3162b3bc-unowinreg.dll is needed even under NetBSD.
Download from http://download.go-oo.org/extern/ . (Yuji Yamano found that this file
can be empty file under Unix like OSes, thank you)
With Java support, it takes about 5 hours to build LibreOffice (Machine spec: Intel
Core i5 4-core 1.7GHz, RAM 4GB, SSD storage)
16
17. Third successful build
●
Language packs are not built yet.
●
I have decided to build ALL language packs.
●
Change –with-lang=”” to –with-lang=”ALL” only
●
It takes 9 hours to build on my machine.
●
LibreOffice detects locale and change its user interface
language.
17
18. Assignments 1/2
●
●
●
LibreOffice’s binaries does not have sane RPATH. I use pkgsrc
as developer mode (PKG_DEVELOPER=yes), and pkgsrec
framework detects invalid RPATH and I have gotten the errors.
→ It seems very heavy problem. I have set
CHECK_SHLIBS_SUPPORTED=no and disable binary RPATH
checks by pkgsrc.
LibreOffice has its own CPU number detection mechanism for its
build. Pkgsrc also has parallel build mechanism. They conflict
each other. I have decided to disable pkgsrc’s machanism.
To reduce build time, use more external libraries.
18
19. Assignment 2/2
●
●
●
I want to build under DragonFly, FreeBSD, OpenBSD with
pkgsrc, but many packages from pkgsrc are broken. I will
fix them.
→ My primary target is DragonFly/i386 3.4.3
Under NetBSD 5.2.*, there are many SIGSEGV crash in
libvcllo.so. The conbination of boost library, gcc, and
libvcllo is bad. I cannot find the solution yet.
I have found some Microsoft PowerPoint files cause
freeze. These files are confidential, and how to report this
bug...
19
20. License of this document
●
This article is licensed under CC-BY 3.0 Unported. See
http://creativecommons.org/licenses/by/3.0/deed.en_US
20