Cross-platform support middleware

Software abstraction layer

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Cross-platform support middleware" – news · newspapers · books · scholar · JSTOR (July 2010) (Learn how and when to remove this message)

|

This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.
Find sources: "Cross-platform support middleware" – news · newspapers · books · scholar · JSTOR (November 2020)

|

A cross-platform support middleware (CPSM) is a software abstraction layer that guarantees the existence, and correct implementation, of a set of services on top a set of platforms.[1]

## Abstraction method

[edit]

The abstraction method in the CPSM development is the method used to compile the concrete source code for a given platform without compromising the abstract interfaces provided. The most commonly used abstraction methods in CPSM development are: conditional compilation and directory separation of sources.

The first method consists in embedding preprocessor instructions in the source code to conditionally select the source subtree compatible with a given platform.

The second method takes advantage of the filesystem organization to divide the source code in different folders, one for each incompatible platform. Thus delegating the selection problem to the build system.

Some distributions like MSYS and Cygwin may help build the cross-platform code in a Unix-like environment even on Microsoft Windows. Both distributions provide a decent version of GNU Make that can direct the build process in a cross-platform fashion.

## See also

[edit]

* Adaptive Communication Environment
* Boost C++ libraries
* GTK+
* Netscape Portable Runtime
* Simple DirectMedia Layer
* wxWidgets

## References

[edit]

1. ^ Zavolinsky, Patricio. "Abstracción en el desarrollo de software independiente de la plataforma: Análisis del proceso de desarrollo de Cross-Platform Support Middlewares (spanish)" (PDF). Universidad de Buenos Aires, Argentina. Archived from the original (PDF) on 2009-04-11. Retrieved 2008-09-25.